In the Linux kernel, the following vulnerability has been resolved:
usb: gadget: core: flush gadget workqueue after device removal
device_del() can lead to new work being scheduled in gadget->work
workqueue. This is observed, for example, with the dwc3 driver with the
following call stack:
device_del()
gadget_unbind_driver()
usb_gadget_disconnect_locked()
dwc3_gadget_pullup()
dwc3_gadget_soft_disconnect()
usb_gadget_set_state()
schedule_work(&gadget->work)
Move flush_work() after device_del() to ensure the workqueue is cleaned
up.
Metrics
Affected Vendors & Products
References
History
Thu, 27 Mar 2025 15:30:00 +0000
Type | Values Removed | Values Added |
---|---|---|
Weaknesses | CWE-416 | |
Metrics |
cvssV3_1
|
cvssV3_1
|
Sat, 08 Mar 2025 14:00:00 +0000
Type | Values Removed | Values Added |
---|---|---|
References |
| |
Metrics |
threat_severity
|
cvssV3_1
|
Fri, 07 Mar 2025 18:15:00 +0000
Type | Values Removed | Values Added |
---|---|---|
References |
|
Fri, 07 Mar 2025 09:15:00 +0000
Type | Values Removed | Values Added |
---|---|---|
Description | In the Linux kernel, the following vulnerability has been resolved: usb: gadget: core: flush gadget workqueue after device removal device_del() can lead to new work being scheduled in gadget->work workqueue. This is observed, for example, with the dwc3 driver with the following call stack: device_del() gadget_unbind_driver() usb_gadget_disconnect_locked() dwc3_gadget_pullup() dwc3_gadget_soft_disconnect() usb_gadget_set_state() schedule_work(&gadget->work) Move flush_work() after device_del() to ensure the workqueue is cleaned up. | |
Title | usb: gadget: core: flush gadget workqueue after device removal | |
References |
|

Status: PUBLISHED
Assigner: Linux
Published: 2025-03-07T09:09:57.515Z
Updated: 2025-05-04T07:22:17.406Z
Reserved: 2024-12-29T08:45:45.777Z
Link: CVE-2025-21838

No data.

Status : Received
Published: 2025-03-07T09:15:16.810
Modified: 2025-03-07T18:15:47.713
Link: CVE-2025-21838
