Searched hist:"65841 fd5132c3941cdf5df09e70df3ed28323212" (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/drivers/net/usb/ |
H A D | usbnet.c | diff ab6f148de28261682d300662e87b9477f7efc95b Sun Aug 26 15:41:38 CDT 2012 Oliver Neukum <oliver@neukum.org> usbnet: fix deadlock in resume
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@suse.de> CC: stable@kernel.org Signed-off-by: David S. Miller <davem@davemloft.net> diff 65841fd5132c3941cdf5df09e70df3ed28323212 Tue Jun 19 16:15:53 CDT 2012 Ming Lei <ming.lei@canonical.com> usbnet: handle remote wakeup asap
If usbnet is resumed by remote wakeup, generally there are some packets comming to be handled, so allocate and submit rx URBs in usbnet_resume to avoid delays introduced by tasklet. Otherwise, usbnet may have been runtime suspended before the usbnet_bh is executed to schedule Rx URBs.
Without the patch, usbnet can't recieve any packets from peer in runtime suspend state if runtime PM is enabled and autosuspend_delay is set as zero.
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>
|