aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/usb/host/xhci.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
index 295a0a2063a6..89ac48534099 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -897,7 +897,12 @@ int xhci_urb_enqueue(struct usb_hcd *hcd, struct urb *urb, gfp_t mem_flags)
897 slot_id, ep_index); 897 slot_id, ep_index);
898 spin_unlock_irqrestore(&xhci->lock, flags); 898 spin_unlock_irqrestore(&xhci->lock, flags);
899 } else { 899 } else {
900 ret = -EINVAL; 900 spin_lock_irqsave(&xhci->lock, flags);
901 if (xhci->xhc_state & XHCI_STATE_DYING)
902 goto dying;
903 ret = xhci_queue_isoc_tx_prepare(xhci, GFP_ATOMIC, urb,
904 slot_id, ep_index);
905 spin_unlock_irqrestore(&xhci->lock, flags);
901 } 906 }
902exit: 907exit:
903 return ret; 908 return ret;