diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c index 09a53e7..5814c5a 100644 --- a/drivers/usb/core/hcd.c +++ b/drivers/usb/core/hcd.c @@ -1686,6 +1686,18 @@ irqreturn_t usb_hcd_irq (int irq, void *__hcd) struct usb_hcd *hcd = __hcd; int start = hcd->state; +#ifdef DEBUG + static unsigned int _enabled = 0; + static unsigned int _disabled = 0; + if (raw_irqs_disabled()) { + _disabled++; + } else { + _enabled++; + printk(KERN_CRIT "USB_HCD_IRQ interrupts disabled %d enabled %d\n", + _disabled, _enabled); + } +#endif + if (unlikely(start == HC_STATE_HALT || !test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags))) return IRQ_NONE;