CVE-2023-54159 usb: mtu3: fix kernel panic at qmu transfer done irq handler
A race condition in the Linux kernel mtu3 USB driver can cause a kernel panic via null pointer dereference, leading to denial of service.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2023-54159?
CVE-2023-54159 is a vulnerability in Linux, published on 24 Dec 2025. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
usb: mtu3: fix kernel panic at qmu transfer done irq handler
When handle qmu transfer irq, it will unlock @mtu->lock before give back request, if another thread handle disconnect event at the same time, and try to disable ep, it may lock @mtu->lock and free qmu ring, then qmu irq hanlder may get a NULL gpd, avoid the KE by checking gpd's value before handling it.
e.g. qmu done irq on cpu0 thread running on cpu1
qmu_done_tx() handle gpd [0] mtu3_requ_complete() mtu3_gadget_ep_disable() unlock @mtu->lock give back request lock @mtu->lock mtu3_ep_disable() mtu3_gpd_ring_free() unlock @mtu->lock lock @mtu->lock get next gpd [1]
[1]: goto [0] to handle next gpd, and next gpd may be NULL.
Which versions are affected by CVE-2023-54159?
How do I fix CVE-2023-54159?
Apply the vendor's patch.
Is CVE-2023-54159 being exploited?
There is no known exploitation of CVE-2023-54159 in the wild and no public exploit code.
Sources
Also known as BELL-CVE-2023-54159, DEBIAN-CVE-2023-54159, GHSA-mgqh-xx5m-2h5f, UBUNTU-CVE-2023-54159.