On Mon, Nov 06, 2023 at 09:28:29AM +0100, Sebastian Andrzej Siewior wrote: > On 2023-11-06 03:02:42 [+0000], Li, Meng wrote: > > > Good. Meng Li, can you test a patch that replaces the > > > local_irq_disable() - usb_hcd_irq() - local_irq_enable() lines with a single call to > > > generic_handle_irq_safe()? > > > > It needs an irq number as parameter, what I should pass to this > > function, 0 or dev->irq or other value? > > dev->irq is what it asks for. In fact it should be hcd->irq -- see usb_hcd_request_irqs(). Maybe this is the same value as dev->irq; I don't know. > I would really appreciate if you would > instead use the sysfs interface to remove the device prior physically > removing it. This should solve your trouble. The whole reason for having this code in the first place -- the specific use case -- was to handle device removal caused by sudden hardware failure. Obviously there's no way to use the sysfs interface before this occurs. Alan Stern