|
|
@@ -1573,11 +1573,17 @@ static int bnxt_rx_pkt(struct bnxt *bp, struct bnxt_napi *bnapi, u32 *raw_cons,
|
|
|
|
|
|
rx_buf->data = NULL;
|
|
|
if (rxcmp1->rx_cmp_cfa_code_errors_v2 & RX_CMP_L2_ERRORS) {
|
|
|
+ u32 rx_err = le32_to_cpu(rxcmp1->rx_cmp_cfa_code_errors_v2);
|
|
|
+
|
|
|
bnxt_reuse_rx_data(rxr, cons, data);
|
|
|
if (agg_bufs)
|
|
|
bnxt_reuse_rx_agg_bufs(bnapi, cp_cons, agg_bufs);
|
|
|
|
|
|
rc = -EIO;
|
|
|
+ if (rx_err & RX_CMPL_ERRORS_BUFFER_ERROR_MASK) {
|
|
|
+ netdev_warn(bp->dev, "RX buffer error %x\n", rx_err);
|
|
|
+ bnxt_sched_reset(bp, rxr);
|
|
|
+ }
|
|
|
goto next_rx;
|
|
|
}
|
|
|
|