linux/drivers/usb/class
Oliver Neukum a8b3b51961 USB: CDC-ACM: fix poison/unpoison imbalance
suspend() does its poisoning conditionally, resume() does it
unconditionally. On a device with combined interfaces this
will balance, on a device with two interfaces the counter will
go negative and resubmission will fail.

Both actions need to be done conditionally.

Fixes: 6069e3e927 ("USB: cdc-acm: untangle a circular dependency between callback and softint")
Signed-off-by: Oliver Neukum <oneukum@suse.com>
Cc: stable <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20210421074513.4327-1-oneukum@suse.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-04-22 10:53:15 +02:00
..
cdc-acm.c USB: CDC-ACM: fix poison/unpoison imbalance 2021-04-22 10:53:15 +02:00
cdc-acm.h usb: cdc-acm: fix cooldown mechanism 2020-10-28 13:20:21 +01:00
cdc-wdm.c USB: cdc-wdm: Fix use after free in service_outstanding_interrupt(). 2020-12-28 15:44:23 +01:00
Kconfig treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
Makefile USB: add SPDX identifiers to all remaining Makefiles 2017-11-07 15:53:48 +01:00
usblp.c USB: usblp: fix a hang in poll() if disconnected 2021-03-10 09:36:13 +01:00
usbtmc.c USB: usbtmc: Bump USBTMC_API_VERSION value 2020-12-28 15:50:30 +01:00