diff options
author | Oliver Neukum <oliver@neukum.org> | 2009-12-16 13:43:59 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-03-02 17:53:19 -0500 |
commit | 319c3ea451e19f72b578661e26fb33739af5ae1c (patch) | |
tree | 6c6743ee55ce2791009036101893c6cda82a944d | |
parent | 97d35f95552c9a0ee4777a7f04431a9fd1260478 (diff) |
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>
-rw-r--r-- | drivers/usb/host/xhci-hcd.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/host/xhci-hcd.c b/drivers/usb/host/xhci-hcd.c index c8573f874ec4..4cb69e0af834 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, | |||
1007 | * for usb_set_interface() and usb_set_configuration() claim). | 1007 | * for usb_set_interface() and usb_set_configuration() claim). |
1008 | */ | 1008 | */ |
1009 | if (xhci_endpoint_init(xhci, xhci->devs[udev->slot_id], | 1009 | if (xhci_endpoint_init(xhci, xhci->devs[udev->slot_id], |
1010 | udev, ep, GFP_KERNEL) < 0) { | 1010 | udev, ep, GFP_NOIO) < 0) { |
1011 | dev_dbg(&udev->dev, "%s - could not initialize ep %#x\n", | 1011 | dev_dbg(&udev->dev, "%s - could not initialize ep %#x\n", |
1012 | __func__, ep->desc.bEndpointAddress); | 1012 | __func__, ep->desc.bEndpointAddress); |
1013 | return -ENOMEM; | 1013 | return -ENOMEM; |