diff options
Diffstat (limited to 'target/linux/generic/patches-3.18/071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch')
-rw-r--r-- | target/linux/generic/patches-3.18/071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.18/071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch b/target/linux/generic/patches-3.18/071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch new file mode 100644 index 0000000..506d8c6 --- /dev/null +++ b/target/linux/generic/patches-3.18/071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch @@ -0,0 +1,35 @@ +From 43f159c60a99318b1ef7d1d7c16c4dfdd06bfd90 Mon Sep 17 00:00:00 2001 +From: Hauke Mehrtens <hauke@hauke-m.de> +Date: Sun, 18 Jan 2015 19:49:59 +0100 +Subject: [PATCH] bgmac: activate irqs only if there is nothing to poll + +IRQs should only get activated when there is nothing to poll in the +queue any more and to after every poll. + +Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> +Signed-off-by: David S. Miller <davem@davemloft.net> +--- + drivers/net/ethernet/broadcom/bgmac.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c +index aa9f950..3007d95 100644 +--- a/drivers/net/ethernet/broadcom/bgmac.c ++++ b/drivers/net/ethernet/broadcom/bgmac.c +@@ -1167,10 +1167,10 @@ static int bgmac_poll(struct napi_struct *napi, int weight) + bgmac->int_status = 0; + } + +- if (handled < weight) ++ if (handled < weight) { + napi_complete(napi); +- +- bgmac_chip_intrs_on(bgmac); ++ bgmac_chip_intrs_on(bgmac); ++ } + + return handled; + } +-- +1.8.4.5 + |