Bug 212725
Summary: | USB CDC ACM device stop working | ||
---|---|---|---|
Product: | Drivers | Reporter: | Stefan Agner (stefan) |
Component: | USB | Assignee: | Default virtual assignee for Drivers/USB (drivers_usb) |
Status: | RESOLVED CODE_FIX | ||
Severity: | high | CC: | oliver |
Priority: | P1 | ||
Hardware: | x86-64 | ||
OS: | Linux | ||
Kernel Version: | 5.11.15 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: | fix a poison/unpoison imbalance |
Description
Stefan Agner
2021-04-19 21:18:02 UTC
I went back and installed some older LTS kernel I had at hand. It seems that 5.10.26 was still working and 5.10.29 is broken. I don't have kernels at hand inbetween, but hopefully this narrows it down already sufficently. This is on a AMD Ryzen 9 3900X platform using a AMD X570 motherboard. The USB 2.0 devices are connected through USB 3.0 hub, but also connecting them directly to the root port seems to exhibit the issue. Some possible candidates: https://lore.kernel.org/linux-usb/20210311130126.15972-1-oneukum@suse.com/ https://lore.kernel.org/linux-usb/20210311133714.31881-1-oneukum@suse.com/ Created attachment 296439 [details]
fix a poison/unpoison imbalance
Please test this patch
Thanks for the quick response! Applied and built a 5.11.15 kernel with that patch. It indeed seems to fix the issue! It did not apply cleanly on 5.11.15 or master, there is a `spin_lock_irq` in that area. I just moved the acm_unpoison_urbs after the suspend counter decrement, not sure if that is the correct fix though. FWIW, the issue is now fixed in kernels v5.11.17/v5.10.33. I guess it will make it into v5.12.1 (at this point not yet released). |