[kernel/f18] Add patch to fix usbnet URB handling (rhbz 998342)

Josh Boyer jwboyer at fedoraproject.org
Tue Nov 26 19:24:43 UTC 2013


commit fdd4605b142461905f7d88feff6fafed74143484
Author: Josh Boyer <jwboyer at fedoraproject.org>
Date:   Tue Nov 26 14:22:21 2013 -0500

    Add patch to fix usbnet URB handling (rhbz 998342)

 kernel.spec                                    |    7 ++++
 usbnet-fix-status-interrupt-urb-handling.patch |   37 ++++++++++++++++++++++++
 2 files changed, 44 insertions(+), 0 deletions(-)
---
diff --git a/kernel.spec b/kernel.spec
index a6a1bf9..0783267 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -824,6 +824,9 @@ Patch25157: xfs-underflow-bug-in-xfs_attrlist_by_handle.patch
 #rhbz 1022733
 Patch25158: via-velocity-fix-netif_receive_skb-use-in-irq-disable.patch
 
+#rhbz 998342
+Patch25159: usbnet-fix-status-interrupt-urb-handling.patch
+
 # END OF PATCH DEFINITIONS
 
 %endif
@@ -1585,6 +1588,9 @@ ApplyPatch xfs-underflow-bug-in-xfs_attrlist_by_handle.patch
 #rhbz 1022733
 ApplyPatch via-velocity-fix-netif_receive_skb-use-in-irq-disable.patch
 
+#rhbz 998342
+ApplyPatch usbnet-fix-status-interrupt-urb-handling.patch
+
 # END OF PATCH APPLICATIONS
 
 %endif
@@ -2427,6 +2433,7 @@ fi
 #                 ||     ||
 %changelog
 * Tue Nov 26 2013 Josh Boyer <jwboyer at fedoraproject.org>
+- Add patch to fix usbnet URB handling (rhbz 998342)
 - Fix crash in via-velocity driver (rhbz 1022733)
 - CVE-2013-6382 xfs: missing check for ZERO_SIZE_PTR (rhbz 1033603 1034670)
 
diff --git a/usbnet-fix-status-interrupt-urb-handling.patch b/usbnet-fix-status-interrupt-urb-handling.patch
new file mode 100644
index 0000000..74bf397
--- /dev/null
+++ b/usbnet-fix-status-interrupt-urb-handling.patch
@@ -0,0 +1,37 @@
+From 52f48d0d9aaa621ffa5e08d79da99a3f8c93b848 Mon Sep 17 00:00:00 2001
+From: Felix Fietkau <nbd at openwrt.org>
+Date: Tue, 12 Nov 2013 16:34:41 +0100
+Subject: [PATCH] usbnet: fix status interrupt urb handling
+
+Since commit 7b0c5f21f348a66de495868b8df0284e8dfd6bbf
+"sierra_net: keep status interrupt URB active", sierra_net triggers
+status interrupt polling before the net_device is opened (in order to
+properly receive the sync message response).
+
+To be able to receive further interrupts, the interrupt urb needs to be
+re-submitted, so this patch removes the bogus check for netif_running().
+
+Signed-off-by: Felix Fietkau <nbd at openwrt.org>
+Tested-by: Dan Williams <dcbw at redhat.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/usb/usbnet.c | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c
+index 90a429b..8494bb5 100644
+--- a/drivers/net/usb/usbnet.c
++++ b/drivers/net/usb/usbnet.c
+@@ -204,9 +204,6 @@ static void intr_complete (struct urb *urb)
+ 		break;
+ 	}
+ 
+-	if (!netif_running (dev->net))
+-		return;
+-
+ 	status = usb_submit_urb (urb, GFP_ATOMIC);
+ 	if (status != 0)
+ 		netif_err(dev, timer, dev->net,
+-- 
+1.8.3.1
+


More information about the scm-commits mailing list