len = ( le16_to_cpu ( rx->length ) & RTL_DESC_SIZE_MASK );
iob_put ( iobuf, ( len - 4 /* strip CRC */ ) );
- DBGC2 ( rtl, "REALTEK %p RX %d complete (length %zd)\n",
- rtl, rx_idx, len );
-
/* Hand off to network stack */
if ( rx->flags & cpu_to_le16 ( RTL_DESC_RES ) ) {
+ DBGC ( rtl, "REALTEK %p RX %d error (length %zd, "
+ "flags %04x)\n", rtl, rx_idx, len,
+ le16_to_cpu ( rx->flags ) );
netdev_rx_err ( netdev, iobuf, -EIO );
} else {
+ DBGC2 ( rtl, "REALTEK %p RX %d complete (length "
+ "%zd)\n", rtl, rx_idx, len );
netdev_rx ( netdev, iobuf );
}
rtl->rx.cons++;