USB: yurex: fix control-URB timeout handling
commit49bb10692bb5eaf6310d036d05090d61d91a2274
authorJohan Hovold <johan@kernel.org>
Mon, 14 Dec 2020 10:30:53 +0000 (14 11:30 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 12 Jan 2021 18:49:04 +0000 (12 19:49 +0100)
treeb27978dc7460efba25a1ddda630ef446209512b9
parentf617a85b20b5329f4ba2f9f42ff9412ec53d45ae
USB: yurex: fix control-URB timeout handling

commit 372c93131998c0622304bed118322d2a04489e63 upstream.

Make sure to always cancel the control URB in write() so that it can be
reused after a timeout or spurious CMD_ACK.

Currently any further write requests after a timeout would fail after
triggering a WARN() in usb_submit_urb() when attempting to submit the
already active URB.

Reported-by: syzbot+e87ebe0f7913f71f2ea5@syzkaller.appspotmail.com
Fixes: 6bc235a2e24a ("USB: add driver for Meywa-Denki & Kayac YUREX")
Cc: stable <stable@vger.kernel.org> # 2.6.37
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/misc/yurex.c