aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-3.18/071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch
diff options
context:
space:
mode:
authorRafał Miłecki <zajec5@gmail.com>2015-02-11 17:35:09 +0000
committerRafał Miłecki <zajec5@gmail.com>2015-02-11 17:35:09 +0000
commitc419d3be121a35680753f4709a070b5da239d97c (patch)
tree66dad4e406ff8b89770b9fb91d19b19ed922505e /target/linux/generic/patches-3.18/071-bgmac-activate-irqs-only-if-there-is-nothing-to-poll.patch
parent656eef3a505d9d1493c5e9db5a7d86e55544e9e1 (diff)
downloadmaster-187ad058-c419d3be121a35680753f4709a070b5da239d97c.tar.gz
master-187ad058-c419d3be121a35680753f4709a070b5da239d97c.tar.bz2
master-187ad058-c419d3be121a35680753f4709a070b5da239d97c.zip
kernel: backport mainlined bgmac patches from 3.19
Signed-off-by: Rafał Miłecki <zajec5@gmail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44410 3c298f89-4303-0410-b956-a3cf2f4a3e73
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.patch35
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 0000000000..506d8c6f1c
--- /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
+