On Wed, 2006-01-18 at 14:25 +0100, Oliver Neukum wrote: > This patch is wrong. usb_kill_urb() will sleep. You must not use it under > a spinlock. Whoops. Good catch. I'll have to analyse the logic with the lists being used here (and probably add a temporary list). Will try to get a new patch until tomorrow. [side note: how about adding might_sleep() to usb_kill_urb? Then I'd at least have noticed this right away] johannes