CVE-2026-43327
Race Condition in Linux Kernel USB Gadget Core
Publication date: 2026-05-08
Last updated on: 2026-05-08
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linux | linux_kernel | * |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-UNKNOWN |
Attack-Flow Graph
AI Powered Q&A
How can this vulnerability impact me? :
This vulnerability can cause the Linux kernel to crash due to an addressing exception triggered by the race condition in the USB dummy host controller driver.
A kernel crash can lead to system instability, denial of service, and potential loss of data or interruption of services relying on USB gadget functionality.
Can you explain this vulnerability to me?
This vulnerability exists in the Linux kernel's USB dummy host controller driver (dummy-hcd). It is caused by a race condition in the usb_gadget_udc_reset() function, where the function is called with a NULL driver argument due to improper synchronization.
The root cause is that the stop_activity() routine sometimes releases and then re-acquires a spinlock (dum->lock), allowing another thread performing a driver unbind to intervene and clear important flags and pointers prematurely. This happens because the callback usage counter (dum->callback_usage) is incremented too late, allowing the unbind thread to proceed without waiting.
The fix involves incrementing dum->callback_usage before calling stop_activity(), ensuring that the unbind thread cannot clear the driver pointer until after usb_gadget_udc_reset() completes safely.
What immediate steps should I take to mitigate this vulnerability?
The vulnerability is a synchronization error in the Linux kernel's USB dummy host controller driver (dummy-hcd) that can cause a crash due to a race condition during USB reset and driver unbind.
To mitigate this vulnerability, you should update your Linux kernel to a version that includes the fix which increments the callback usage counter before calling stop_activity(), preventing the race condition.
Since this is a kernel-level issue, applying the official kernel patch or upgrading to a patched kernel release is the immediate and recommended step.