On Mon, 2012-11-26 at 00:12 +0100, Tilman Schmidt wrote: > The delayed work function int_in_work() may call usb_reset_device() > and thus, indirectly, the driver's pre_reset method. Trying to > cancel the work synchronously in that situation would deadlock. > Fix by avoiding cancel_work_sync() in the pre_reset method. > > If the reset was NOT initiated by int_in_work() this might cause > int_in_work() to run after the post_reset method, with urb_int_in > already resubmitted, so handle that case gracefully. > > Mainline commit: c6fdd8e5d0c65bb8821dc6da26ee1a2ddd58b3cc > > Applies to stable branches 3.0 and later. > > Signed-off-by: Tilman Schmidt <[email protected]> [...]
Added to the queue for 3.2, thanks. Ben. -- Ben Hutchings It is easier to change the specification to fit the program than vice versa.
signature.asc
Description: This is a digitally signed message part
