On Wednesday 12 June 2013 10:35:44 Alan Stern wrote: > On Wed, 12 Jun 2013, Ming Lei wrote: > > > If not, I am wondering why one USB driver need register another hard > > interrupt handler? Could you share such examples? I understand the > > case only exists with timer handler as discussed with Oliver, don't I? > > Here's another possibility. A USB driver has a private lock, and it > acquires this lock in its completion handler. But it also acquires > this lock in other routines, and those other routines may be called by > other drivers or subsystems in interrupt context. That is fatal. But again mechanically using _irqsave in complete() does the job. No other place can be affected. Regards Oliver -- 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