On Thu, 23 Jan 2014, Josh Bendavid wrote: > Hi Alan, > Is it understood why/how this always happens when the interrupt counter for > this device reaches exactly 200001? I would have assumed that this was a > software counter in the kernel, in which case I don't see how this could > correlate to a hardware bug. The kernel keeps track of unhandled interrupts, and you get that "nobody cared" error when the number exceeds 99900 in a 0.1-second period. But the test for this condition occurs only at intervals of 100000 interrupts. In any case, you can try applying the patch below. It should print out some relevant information for the 100 interrupts before and after number 200001. In particular, we should be able to tell whether or not each interrupt was handled by ohci-hcd. Alan Stern Index: usb-3.13/drivers/usb/host/ohci-hcd.c =================================================================== --- usb-3.13.orig/drivers/usb/host/ohci-hcd.c +++ usb-3.13/drivers/usb/host/ohci-hcd.c @@ -784,6 +784,7 @@ static irqreturn_t ohci_irq (struct usb_ struct ohci_hcd *ohci = hcd_to_ohci (hcd); struct ohci_regs __iomem *regs = ohci->regs; int ints; + static int alancnt; /* Read interrupt status (and flush pending writes). We ignore the * optimization of checking the LSB of hcca->done_head; it doesn't @@ -791,6 +792,11 @@ static irqreturn_t ohci_irq (struct usb_ */ ints = ohci_readl(ohci, ®s->intrstatus); + if (++alancnt >= 199900 && alancnt < 200100) + ohci_info(ohci, "IRQ %d status %x enable %x\n", + alancnt, ints, + ohci_readl(ohci, ®s->intrenable)); + /* Check for an all 1's result which is a typical consequence * of dead, unclocked, or unplugged (CardBus...) devices */ -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html