aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
authorJoe Lawrence <joe.lawrence@stratus.com>2015-04-30 17:16:04 +0300
committerBen Hutchings <ben@decadent.org.uk>2015-08-07 00:32:10 +0100
commit645d64a5b0ab2eae42c1280029ad2b13e7509308 (patch)
treeed92e9b38335a7c627c07812e67364bbd86f58ea /drivers/usb
parentf810a6a0e02c9651bd2cb3a3c2a076dcdef88d13 (diff)
downloadkernel_samsung_smdk4412-645d64a5b0ab2eae42c1280029ad2b13e7509308.zip
kernel_samsung_smdk4412-645d64a5b0ab2eae42c1280029ad2b13e7509308.tar.gz
kernel_samsung_smdk4412-645d64a5b0ab2eae42c1280029ad2b13e7509308.tar.bz2
xhci: gracefully handle xhci_irq dead device
commit 948fa13504f80b9765d2b753691ab94c83a10341 upstream. If the xHCI host controller has died (ie, device removed) or suffered other serious fatal error (STS_FATAL), then xhci_irq should handle this condition with IRQ_HANDLED instead of -ESHUTDOWN. Signed-off-by: Joe Lawrence <joe.lawrence@stratus.com> Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/host/xhci-ring.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c
index 672c084..a47e29a 100644
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
@@ -2651,7 +2651,7 @@ irqreturn_t xhci_irq(struct usb_hcd *hcd)
xhci_halt(xhci);
hw_died:
spin_unlock(&xhci->lock);
- return -ESHUTDOWN;
+ return IRQ_HANDLED;
}
/*