aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/xhci.c
diff options
context:
space:
mode:
authorDavid Sterba <dsterba@suse.cz>2010-11-02 18:47:18 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-11-11 09:59:14 -0500
commitef821ae70fc35a76bdce7e07c70a1a7c2c33cdb9 (patch)
tree39a8e4f61bf4505eb45e10918e200ca3e0a9ab5c /drivers/usb/host/xhci.c
parent4b4cd731b08fd7fa2f370a5b329062fb5006dc24 (diff)
USB: xhci: Use GFP_ATOMIC under spin_lock
coccinelle check scripts/coccinelle/locks/call_kern.cocci found that in drivers/usb/host/xhci.c an allocation with GFP_KERNEL is done with locks held: xhci_resume spin_lock_irq(xhci->lock) xhci_setup_msix kmalloc(GFP_KERNEL) Change it to GFP_ATOMIC. Signed-off-by: David Sterba <dsterba@suse.cz> CC: Sarah Sharp <sarah.a.sharp@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/host/xhci.c')
-rw-r--r--drivers/usb/host/xhci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
index 5d7d4e951ea4..8ddc965718ab 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -240,7 +240,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci)
240 240
241 xhci->msix_entries = 241 xhci->msix_entries =
242 kmalloc((sizeof(struct msix_entry))*xhci->msix_count, 242 kmalloc((sizeof(struct msix_entry))*xhci->msix_count,
243 GFP_KERNEL); 243 GFP_ATOMIC);
244 if (!xhci->msix_entries) { 244 if (!xhci->msix_entries) {
245 xhci_err(xhci, "Failed to allocate MSI-X entries\n"); 245 xhci_err(xhci, "Failed to allocate MSI-X entries\n");
246 return -ENOMEM; 246 return -ENOMEM;