USB: cdc-wdm: call wake_up_all to allow driver to shutdown on device removal
authorBjørn Mork <bjorn@mork.no>
Mon, 16 Jan 2012 14:11:57 +0000 (15:11 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 24 Jan 2012 20:18:25 +0000 (12:18 -0800)
commit62aaf24dc125d7c55c93e313d15611f152b030c7
tree53aa5c498a5ffae8c8c78bef3be0889c9af61bfd
parente8537bd2c4f325a4796da33564ddcef9489b7feb
USB: cdc-wdm: call wake_up_all to allow driver to shutdown on device removal

wdm_disconnect() waits for the mutex held by wdm_read() before
calling wake_up_all().  This causes a deadlock, preventing device removal
to complete.  Do the wake_up_all() before we start waiting for the locks.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Cc: Oliver Neukum <oliver@neukum.org>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/class/cdc-wdm.c