netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [patch] usbnet: fix 100% CPU use on suspended device
@ 2010-07-21 18:51 Elly Jones
       [not found] ` <AANLkTi=pSkOuiFGAK4inPdm-KbLuVrz51e2T6eV51ts0-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 11+ messages in thread
From: Elly Jones @ 2010-07-21 18:51 UTC (permalink / raw)
  To: netdev

Subject: [patch] usbnet: fix 100% CPU use on suspended device
From: Elly Jones <ellyjones@google.com>

This patch causes the usbnet module not to attempt to submit URBs to the device
if the device is not ready to accept them. This fixes a misbehavior trigged by
the Qualcomm Gobi driver (released under GPL through their Code Aurora
initiative) which causes the usbnet core to consume 100% of CPU attempting and
failing to submit URBs. This patch is against Linus's 2.6 repo commit
a9f7f2e74ae0e6a801a2433dc8e9124d73da0cb4.
Signed-off-by: Elizabeth Jones <ellyjones@google.com>
---
diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c
index 81c76ad..df7e72e 100644
--- a/drivers/net/usb/usbnet.c
+++ b/drivers/net/usb/usbnet.c
@@ -1172,6 +1172,7 @@ static void usbnet_bh (unsigned long param)
 	// or are we maybe short a few urbs?
 	} else if (netif_running (dev->net) &&
 		   netif_device_present (dev->net) &&
+		   dev->udev->can_submit &&
 		   !timer_pending (&dev->delay) &&
 		   !test_bit (EVENT_RX_HALT, &dev->flags)) {
 		int	temp = dev->rxq.qlen;

^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2010-08-04 14:09 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-21 18:51 [patch] usbnet: fix 100% CPU use on suspended device Elly Jones
     [not found] ` <AANLkTi=pSkOuiFGAK4inPdm-KbLuVrz51e2T6eV51ts0-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-07-26  4:57   ` David Miller
     [not found]     ` <20100725.215739.183063953.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2010-07-26 13:26       ` Elly Jones
2010-07-26 14:36         ` Alan Stern
     [not found]           ` <Pine.LNX.4.44L0.1007261033090.1550-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-07-26 14:47             ` Elly Jones
2010-07-26 15:13               ` Alan Stern
     [not found]                 ` <Pine.LNX.4.44L0.1007261106350.1550-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-07-26 16:21                   ` Oliver Neukum
     [not found]                     ` <201007261821.15020.oliver-GvhC2dPhHPQdnm+yROfE0A@public.gmane.org>
2010-08-02 13:31                       ` Elly Jones
     [not found]                         ` <AANLkTi=KbThErL-jXXSVGdkod-p7B7u6eDL5LtnU5SG--JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-08-03 14:39                           ` Oliver Neukum
     [not found]                             ` <201008031639.24874.oliver-GvhC2dPhHPQdnm+yROfE0A@public.gmane.org>
2010-08-04 14:04                               ` Elly Jones
2010-08-04 14:08                                 ` Oliver Neukum

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).