CVE-2026-64329

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
25/07/2026
Last modified:
25/07/2026

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> usb: typec: ucsi: ccg: Fix use-after-free of ucsi on remove<br /> <br /> The threaded IRQ handler ccg_irq_handler() calls ucsi_notify_common(),<br /> which on a connector-change event calls ucsi_connector_change() and<br /> schedules connector work. In ucsi_ccg_remove(), ucsi_destroy() frees<br /> uc-&gt;ucsi (kfree) before free_irq() is called, so a handler invocation<br /> already in flight may access the freed object after ucsi_destroy().<br /> <br /> CPU 0 (remove) | CPU 1 (threaded IRQ)<br /> ucsi_destroy(uc-&gt;ucsi) | ccg_irq_handler()<br /> kfree(ucsi) // FREE | ucsi_notify_common(uc-&gt;ucsi) // USE<br /> <br /> Move free_irq() before ucsi_destroy() in the remove path. It is kept<br /> after ucsi_unregister(): ucsi_unregister() cancels connector work whose<br /> handler issues GET_CONNECTOR_STATUS through ucsi_send_command_common(),<br /> which waits for a completion that is signalled from the IRQ handler, so<br /> the IRQ must stay active until that work has been cancelled.<br /> <br /> The probe error path already orders free_irq() before ucsi_destroy().<br /> <br /> This bug was found by static analysis.

Impact