Home Home > GIT Browse
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlaf Hering <ohering@suse.de>2017-10-20 12:20:33 +0200
committerOlaf Hering <ohering@suse.de>2017-10-20 12:23:27 +0200
commit7bf21420ad191c25e655c98dc574b5891dfca339 (patch)
tree6273eb87bbfe4fd86c9c3b988195619f7f73fb44
parentd1bf4a41a0d1bcaa1eec18843b3a12a50472e9fe (diff)
netvsc: don't signal host twice if empty (fate#323887).
-rw-r--r--patches.suse/msft-hv-1426-netvsc-don-t-signal-host-twice-if-empty.patch31
-rw-r--r--series.conf1
2 files changed, 32 insertions, 0 deletions
diff --git a/patches.suse/msft-hv-1426-netvsc-don-t-signal-host-twice-if-empty.patch b/patches.suse/msft-hv-1426-netvsc-don-t-signal-host-twice-if-empty.patch
new file mode 100644
index 0000000000..edd75d6819
--- /dev/null
+++ b/patches.suse/msft-hv-1426-netvsc-don-t-signal-host-twice-if-empty.patch
@@ -0,0 +1,31 @@
+From: stephen hemminger <stephen@networkplumber.org>
+Date: Wed, 9 Aug 2017 17:46:04 -0700
+Patch-mainline: v4.14-rc1
+Subject: netvsc: don't signal host twice if empty
+Git-commit: 5e20d55a23a76a876396ba1235bdf019e74d0c6f
+References: fate#323887
+
+When hv_pkt_iter_next() returns NULL, it has already called
+hv_pkt_iter_close(). Calling it twice can lead to extra host signal.
+
+Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Acked-by: Olaf Hering <ohering@suse.de>
+---
+ drivers/net/hyperv/netvsc.c | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
+--- a/drivers/net/hyperv/netvsc.c
++++ b/drivers/net/hyperv/netvsc.c
+@@ -1191,10 +1191,6 @@ int netvsc_poll(struct napi_struct *napi, int budget)
+ nvchan->desc = hv_pkt_iter_next(channel, nvchan->desc);
+ }
+
+- /* if ring is empty, signal host */
+- if (!nvchan->desc)
+- hv_pkt_iter_close(channel);
+-
+ /* If send of pending receive completions suceeded
+ * and did not exhaust NAPI budget this time
+ * and not doing busy poll
diff --git a/series.conf b/series.conf
index 55d5353538..3bda60c986 100644
--- a/series.conf
+++ b/series.conf
@@ -1676,6 +1676,7 @@
patches.suse/msft-hv-1423-hyper-v-Globalize-vp_index.patch
patches.suse/msft-hv-1424-x86-hyper-v-Use-hypercall-for-remote-TLB-flush.patch
patches.suse/msft-hv-1425-netvsc-delay-setup-of-VF-device.patch
+ patches.suse/msft-hv-1426-netvsc-don-t-signal-host-twice-if-empty.patch
patches.suse/suse-hv-guest-os-id.patch
patches.suse/suse-hv-kvp_on_msg.dbg.patch