CVE-2026-64465: usb: xhci: Fix sleep in atomic context in xhci_free_streams()

Published Jul 25, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

usb: xhci: Fix sleep in atomic context in xhcifreestreams()

When a USB device with active stream endpoints is disconnected, xhcifreestreams() is called from the hubevent workqueue to free the stream resources. It calls xhcifreestreaminfo() while holding xhci->lock with irqs disabled.

xhcifreestreaminfo() invokes xhcifreestreamctx(), which calls dmafreecoherent() for large stream context arrays.

dmafreecoherent() can sleep (e.g. via vunmap), triggering a BUG when called from atomic context.

Call trace: dmafreeattrs+0x174/0x220 xhcifreestreaminfo+0xd0/0x11c xhcifreestreams+0x278/0x37c usbfreestreams+0x98/0xc0 usbunbindinterface+0x1b8/0x2f8 devicereleasedriverinternal+0x1d4/0x2cc devicereleasedriver+0x18/0x28 busremovedevice+0x160/0x1a4 devicedel+0x1ec/0x350 usbdisabledevice+0x98/0x214 usbdisconnect+0xf0/0x35c hubevent+0xab4/0x19ec processonework+0x278/0x63c

Fix this by saving the streaminfo pointers and clearing the ep references under the lock, then calling xhcifreestreaminfo() outside the lock where sleeping is allowed.

Affected Software

2 affected componentsFixes available
Linux Linux kernel
Microsoft azl3 kernel 6.6.144.1-1<6.6.145.2-1
6.6.145.2-1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 6.6.145.2-1
  2. Configuration

    Apply the upstream Linux kernel fix for 'usb: xhci: Fix sleep in atomic context in xhci_free_streams()' by saving the stream_info pointers and clearing/freeing the stream resources outside the lock (so xhci_free_stream_ctx()/xhci_free_stream_info() does not call dma_free_coherent() in atomic context).

    Linux kernel (USB xHCI) fix sleep-in-atomic-context in xhci_free_streams()/xhci_free_stream_info() = implemented

Event History

Jul 25, 2026
CVE Published
via MITRE·08:51 AM
Data Sourced
via MITRE·08:51 AM
Description
Data Sourced
via NVD·10:17 AM
Description
Jul 26, 2026
Data Sourced
via Microsoft·08:11 AM
DescriptionSeverityWeaknessAffected Software
Updated
via Microsoft·08:11 AM
DescriptionSeverity

Frequently Asked Questions

1

What is the severity of CVE-2026-64465?

CVE-2026-64465 has a risk rating of 27, indicating a medium severity vulnerability.

2

How do I fix CVE-2026-64465?

The vulnerability in CVE-2026-64465 is fixed in the latest updates of the Linux kernel, so updating to the patched version is recommended.

3

What are the impacts of CVE-2026-64465?

CVE-2026-64465 can lead to potential stability issues in the Linux kernel when handling USB devices with active stream endpoints.

4

Is CVE-2026-64465 a local or remote vulnerability?

CVE-2026-64465 can be exploited through local access by manipulating USB device connections.

5

Which Linux kernel versions are affected by CVE-2026-64465?

CVE-2026-64465 affects specific versions of the Linux kernel prior to applying the fix implemented on July 25, 2026.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203