On 2019-10-18 10:28:17 [+0200], Daniel Wagner wrote: > handle_simple_irq() expect interrupts to be disabled. The USB > framework is using threaded interrupts, which implies that interrupts > are re-enabled as soon as it has run. Without threading interrupts, this is invoked in pure softirq context since commit ed194d1367698 ("usb: core: remove local_irq_save() around ->complete() handler") where the local_irq_disable() has been removed. This is probably not a problem because the lock is never observed with in IRQ context. Wouldn't handle_nested_irq() work here instead of the simple thingy? Sebastian