|
@@ -2334,13 +2334,13 @@ static int cnic_service_bnx2x(void *data, void *status_blk)
|
|
|
struct cnic_local *cp = dev->cnic_priv;
|
|
|
u16 prod = cp->kcq_prod_idx & MAX_KCQ_IDX;
|
|
|
|
|
|
- prefetch(cp->status_blk.bnx2x);
|
|
|
- prefetch(&cp->kcq[KCQ_PG(prod)][KCQ_IDX(prod)]);
|
|
|
+ if (likely(test_bit(CNIC_F_CNIC_UP, &dev->flags))) {
|
|
|
+ prefetch(cp->status_blk.bnx2x);
|
|
|
+ prefetch(&cp->kcq[KCQ_PG(prod)][KCQ_IDX(prod)]);
|
|
|
|
|
|
- if (likely(test_bit(CNIC_F_CNIC_UP, &dev->flags)))
|
|
|
tasklet_schedule(&cp->cnic_irq_task);
|
|
|
-
|
|
|
- cnic_chk_pkt_rings(cp);
|
|
|
+ cnic_chk_pkt_rings(cp);
|
|
|
+ }
|
|
|
|
|
|
return 0;
|
|
|
}
|