usbnet: decrease suspend count if returning -EBUSY for runtime suspend
authorMing Lei <ming.lei@canonical.com>
Tue, 19 Jun 2012 21:15:52 +0000 (21:15 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sat, 23 Jun 2012 00:34:17 +0000 (17:34 -0700)
This patch decreases dev->suspend_count in the -EBUSY failure path
of usbnet_suspend. Without the change, the later runtime suspend
will do nothing except for increasing dev->suspend_count.

Signed-off-by: Ming Lei <ming.lei@canonical.com>
Acked-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/usb/usbnet.c

index 815493caea7f5823069efa836fb5dc9a93ea47ae..1e46f693eb47e4e946eb3063ab6d7bc0b4852bb0 100644 (file)
@@ -1515,6 +1515,7 @@ int usbnet_suspend (struct usb_interface *intf, pm_message_t message)
                spin_lock_irq(&dev->txq.lock);
                /* don't autosuspend while transmitting */
                if (dev->txq.qlen && PMSG_IS_AUTO(message)) {
+                       dev->suspend_count--;
                        spin_unlock_irq(&dev->txq.lock);
                        return -EBUSY;
                } else {