linux-stable/drivers/usb/class
Oliver Neukum 19f955ad94 usb: cdc-wdm: close race between read and workqueue
commit 339f83612f upstream.

wdm_read() cannot race with itself. However, in
service_outstanding_interrupt() it can race with the
workqueue, which can be triggered by error handling.

Hence we need to make sure that the WDM_RESPONDING
flag is not just only set but tested.

Fixes: afba937e54 ("USB: CDC WDM driver")
Cc: stable <stable@kernel.org>
Signed-off-by: Oliver Neukum <oneukum@suse.com>
Link: https://lore.kernel.org/r/20240314115132.3907-1-oneukum@suse.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-04-03 15:32:44 +02:00
..
cdc-acm.c usb: cdc-acm: return correct error code on unsupported break 2023-12-15 13:52:47 +01:00
cdc-acm.h USB: cdc-acm: use CDC serial-state defines 2022-07-25 10:57:41 +02:00
cdc-wdm.c usb: cdc-wdm: close race between read and workqueue 2024-04-03 15:32:44 +02:00
Kconfig
Makefile
usblp.c USB: make devnode() callback in usb_class_driver take a const * 2022-10-20 12:11:56 +02:00
usbtmc.c USB: usbtmc: Fix direction for 0-length ioctl control messages 2023-05-13 17:25:49 +09:00