Thread (2 messages) 2 messages, 2 authors, 2012-10-26

Re: [PATCH] bas_gigaset: fix pre_reset handling

flat view

From: David Miller <davem@davemloft.net>
Date: 2012-10-26 06:21:04
Also in: lkml

From: Tilman Schmidt <redacted>
Date: Wed, 24 Oct 2012 20:44:32 +0200
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.

Signed-off-by: Tilman Schmidt <redacted>
Applied, thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help