On Thu, May 14, 2015 at 02:22:31PM -0700, Petri Gynther wrote: > On Thu, May 14, 2015 at 1:12 PM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > > On Thu, 14 May 2015, Petri Gynther wrote: > > > >> > The trick here is that hub_irq() and all the stuff beneath it is > >> > supposed to execute in a tasklet, not in the same context as > >> > ehci_irq(). Consequently the lock should not be taken recursively. > >> > > >> > Perhaps your EHCI platform driver has forgotten to include the HCD_BH > >> > bit in the .flags member of its hc_driver structure. Which driver are > >> > you using? Running "grep EHCI" on the kernel config file should > >> > provide the answer. > >> > > >> > >> Thanks for your reply. The flag HCD_BH was indeed missing from our > >> driver (echi-brcm, not in upstream), and adding it fixes the problem. > > > > That's the problem with maintaining out-of-tree drivers -- they miss > > out on essential changes to the core parts of the system. I strongly > > urge you to submit your driver for inclusion in the upstream kernel. > > > > Up to Broadcom to upstream their driver. Not really, you can do it if you want to, nothing preventing you to do so. In fact, I'd recommend it :) thanks, greg k-h -- 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