summaryrefslogtreecommitdiff
path: root/drivers/usb/host
diff options
context:
space:
mode:
authorOliver Neukum <oliver@neukum.org>2009-12-16 18:43:59 (GMT)
committerGreg Kroah-Hartman <gregkh@suse.de>2010-03-02 22:53:19 (GMT)
commit319c3ea451e19f72b578661e26fb33739af5ae1c (patch)
tree6c6743ee55ce2791009036101893c6cda82a944d /drivers/usb/host
parent97d35f95552c9a0ee4777a7f04431a9fd1260478 (diff)
downloadlinux-319c3ea451e19f72b578661e26fb33739af5ae1c.tar.xz
USB: xhci: No GFP_KERNEL in block error handling
xhci_add_endpoint() is used in the reset path. It must use GFP_NOIO to avoid a possible deadlock. Signed-off-by: Oliver Neukum <oliver@neukum.org> Acked-by: Sarah Sharp <sarah.a.sharp@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/host')
-rw-r--r--drivers/usb/host/xhci-hcd.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/host/xhci-hcd.c b/drivers/usb/host/xhci-hcd.c
index c8573f8..4cb69e0 100644
--- a/drivers/usb/host/xhci-hcd.c
+++ b/drivers/usb/host/xhci-hcd.c
@@ -1007,7 +1007,7 @@ int xhci_add_endpoint(struct usb_hcd *hcd, struct usb_device *udev,
* for usb_set_interface() and usb_set_configuration() claim).
*/
if (xhci_endpoint_init(xhci, xhci->devs[udev->slot_id],
- udev, ep, GFP_KERNEL) < 0) {
+ udev, ep, GFP_NOIO) < 0) {
dev_dbg(&udev->dev, "%s - could not initialize ep %#x\n",
__func__, ep->desc.bEndpointAddress);
return -ENOMEM;