CVE-2026-64329

Source
https://cve.org/CVERecord?id=CVE-2026-64329
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-64329.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-64329
Downstream
Published
2026-07-25T08:49:57.098Z
Modified
2026-07-27T04:03:19.359060682Z
Summary
usb: typec: ucsi: ccg: Fix use-after-free of ucsi on remove
Details

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

usb: typec: ucsi: ccg: Fix use-after-free of ucsi on remove

The threaded IRQ handler ccgirqhandler() calls ucsinotifycommon(), which on a connector-change event calls ucsiconnectorchange() and schedules connector work. In ucsiccgremove(), ucsidestroy() frees uc->ucsi (kfree) before freeirq() is called, so a handler invocation already in flight may access the freed object after ucsi_destroy().

CPU 0 (remove) | CPU 1 (threaded IRQ) ucsidestroy(uc->ucsi) | ccgirqhandler() kfree(ucsi) // FREE | ucsinotify_common(uc->ucsi) // USE

Move freeirq() before ucsidestroy() in the remove path. It is kept after ucsiunregister(): ucsiunregister() cancels connector work whose handler issues GETCONNECTORSTATUS through ucsisendcommand_common(), which waits for a completion that is signalled from the IRQ handler, so the IRQ must stay active until that work has been cancelled.

The probe error path already orders freeirq() before ucsidestroy().

This bug was found by static analysis.

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64329.json",
    "cna_assigner": "Linux"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
e32fd989ac1c45f993fbe89ad0a89aa9ea6993d2
Fixed
f1adeb1ff8bef1467d6961059810795d02bbad5d
Fixed
99381e762273a2410a3f0216000be32b013c0ea9
Fixed
1a160076d3d0dcd4a98a4599ad96eec0790b099b
Fixed
c32df11147822d22facee8fa30c2e8971d12f426
Fixed
86c9ee928c4a370e323e432aaf8dca79c4ba7c85
Fixed
f5c772b76bbd95de8be51cf849c6098f6af6fcf9
Fixed
dbb500bad02146b388041877574829016591ddc8
Fixed
1f0bdc2884b67de337215079bba166df0cdf4ac5

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-64329.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.5.0
Fixed
5.10.261
Type
ECOSYSTEM
Events
Introduced
5.11.0
Fixed
5.15.212
Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
6.1.178
Type
ECOSYSTEM
Events
Introduced
6.2.0
Fixed
6.6.145
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.12.96
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.18.39
Type
ECOSYSTEM
Events
Introduced
6.19.0
Fixed
7.1.4

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-64329.json"