]> git.baikalelectronics.ru Git - kernel.git/commit
xhci: Fix sleeping with IRQs disabled in xhci_stop_device()
authorMathias Nyman <mathias.nyman@linux.intel.com>
Tue, 10 Jun 2014 08:27:41 +0000 (11:27 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 17 Jun 2014 23:44:57 +0000 (16:44 -0700)
commita1aa33f69ea5ee0f930716dc9e88dd26a6123aed
treee944bb41bb5b3f98bca3af7934a03f3ee73c8d0b
parent549696935277802d0399b55e4dc67292609773e5
xhci: Fix sleeping with IRQs disabled in xhci_stop_device()

xhci_stop_device() allocates and issues stop commands for each active endpoint.
This is done with spinlock held and interrupt disabled so we can't sleep during
memory allocation. Use GFP_NOWAIT instead

Regression from commit 0ab9590c204c08e527ea0f1de58be4f129b91281
"xhci: Use command structures when queuing commands on the command ring"
for 3.16-rc1

Fixes: 0ab9590c204c ("xhci: Use command structures when queuing commands")
Reported-by: Dan Williams <dan.j.williams@intel.com>
Reported-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci-hub.c