mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-19 02:34:01 +08:00
HID: usbhid: cancel timer for retry synchronously
This makes sure IO is never restarted while a reset is going on In particular there seems to be no protection from hid_retry_timeout() calling hid_start_in() which would start IO after hid_pre_reset() has already called hid_cease_io() because that uses del_timer(), not del_timer_sync() Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
This commit is contained in:
parent
3797ef6b6b
commit
fad9fbe865
@ -1270,7 +1270,7 @@ static void hid_cancel_delayed_stuff(struct usbhid_device *usbhid)
|
||||
|
||||
static void hid_cease_io(struct usbhid_device *usbhid)
|
||||
{
|
||||
del_timer(&usbhid->io_retry);
|
||||
del_timer_sync(&usbhid->io_retry);
|
||||
usb_kill_urb(usbhid->urbin);
|
||||
usb_kill_urb(usbhid->urbctrl);
|
||||
usb_kill_urb(usbhid->urbout);
|
||||
|
Loading…
Reference in New Issue
Block a user