[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1346049698-10740-1-git-send-email-oliver@neukum.org>
Date: Mon, 27 Aug 2012 08:41:38 +0200
From: oliver@...kum.org
To: davem@...emloft.net, netdev@...r.kernel.org, ming.lei@...onical.com
Cc: Oliver Neukum <oliver@...kum.org>, Oliver Neukum <oneukum@...e.de>,
stable@...nel.org
Subject: [PATCH] usbnet: fix deadlock in resume
From: Oliver Neukum <oliver@...kum.org>
A usbnet device can share a multifunction device
with a storage device. If the storage device is autoresumed
the usbnet devices also needs to be autoresumed. Allocating
memory with GFP_KERNEL can deadlock in this case.
This should go back into all kernels that have
commit 65841fd5132c3941cdf5df09e70df3ed28323212
That is 3.5
Signed-off-by: Oliver Neukum <oneukum@...e.de>
CC: stable@...nel.org
---
drivers/net/usb/usbnet.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c
index 8531c1c..fd4b26d 100644
--- a/drivers/net/usb/usbnet.c
+++ b/drivers/net/usb/usbnet.c
@@ -1573,7 +1573,7 @@ int usbnet_resume (struct usb_interface *intf)
netif_device_present(dev->net) &&
!timer_pending(&dev->delay) &&
!test_bit(EVENT_RX_HALT, &dev->flags))
- rx_alloc_submit(dev, GFP_KERNEL);
+ rx_alloc_submit(dev, GFP_NOIO);
if (!(dev->txq.qlen >= TX_QLEN(dev)))
netif_tx_wake_all_queues(dev->net);
--
1.7.7
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists