Re: [PATCH net-next 09/16] sky2: Don't receive packets when the napi budget == 0
From: Stephen Hemminger <stephen@networkplumber.org>
Date: 2014-03-15 01:34:39
From: Stephen Hemminger <stephen@networkplumber.org>
Date: 2014-03-15 01:34:39
On Fri, 14 Mar 2014 18:05:26 -0700 ebiederm@xmission.com (Eric W. Biederman) wrote:
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" <redacted> --- drivers/net/ethernet/marvell/sky2.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)diff --git a/drivers/net/ethernet/marvell/sky2.c b/drivers/net/ethernet/marvell/sky2.c index 2434611d1b4e..0ddfc43069ba 100644 --- a/drivers/net/ethernet/marvell/sky2.c +++ b/drivers/net/ethernet/marvell/sky2.c@@ -2735,6 +2735,9 @@ static int sky2_status_intr(struct sky2_hw *hw, int to_do, u16 idx) unsigned int total_bytes[2] = { 0 }; unsigned int total_packets[2] = { 0 }; + if (to_do <= 0) + return work_done; + rmb(); do { struct sky2_port *sky2;
I am fine with this. Really should change to_do to an unsigned but that is another battle.