aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/broadcom
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2014-03-11 17:31:09 -0400
committerDavid S. Miller <davem@davemloft.net>2014-03-13 15:18:45 -0400
commit310c4d4e23d191156810f402c747e5e17c4dc0b1 (patch)
tree8ce49a5e7fc5b57dc44e88b42f2102e7d8b5a15e /drivers/net/ethernet/broadcom
parentf9708b4302733ca023722fddcf9f501a3cb8c98b (diff)
bnx2: Don't receive packets when the napi budget == 0
Processing any incoming packets with a with a napi budget of 0 is incorrect driver behavior. This matters as netpoll will shortly call drivers with a budget of 0 to avoid receive packet processing happening in hard irq context. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> Acked-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom')
-rw-r--r--drivers/net/ethernet/broadcom/bnx2.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2.c b/drivers/net/ethernet/broadcom/bnx2.c
index c251ca3056de..2e42de239798 100644
--- a/drivers/net/ethernet/broadcom/bnx2.c
+++ b/drivers/net/ethernet/broadcom/bnx2.c
@@ -3132,6 +3132,9 @@ bnx2_rx_int(struct bnx2 *bp, struct bnx2_napi *bnapi, int budget)
3132 struct l2_fhdr *rx_hdr; 3132 struct l2_fhdr *rx_hdr;
3133 int rx_pkt = 0, pg_ring_used = 0; 3133 int rx_pkt = 0, pg_ring_used = 0;
3134 3134
3135 if (budget <= 0)
3136 return rx_pkt;
3137
3135 hw_cons = bnx2_get_hw_rx_cons(bnapi); 3138 hw_cons = bnx2_get_hw_rx_cons(bnapi);
3136 sw_cons = rxr->rx_cons; 3139 sw_cons = rxr->rx_cons;
3137 sw_prod = rxr->rx_prod; 3140 sw_prod = rxr->rx_prod;