In the Linux kernel, the following vulnerability has been resolved: mfd: cros_ec: Delay dev_set_drvdata() until probe success If ec_device_probe()… (CVE-2026-64420)
In the Linux kernel, the following vulnerability has been resolved: mfd: cros_ec: Delay dev_set_drvdata() until probe success If ec_device_probe() fails, cros_ec_class_release releases memory for the cros_ec_dev structure. However, because the drvdata was already set, sub-drivers like cros_ec_typec can still retrieve the stale pointer via the platform device. This leads to a use-after-free when cros_ec_typec attempts to access &typec->ec->ec->dev on a device that has already been released. Move dev_set_drvdata() to ensure that the pointer is only made available once all initialization steps have succeeded. sysfs: cannot create duplicate filename '/class/chromeos/cros_ec' Call trace: sysfs_do_create_link_sd+0x94/0xdc sysfs_create_link+0x30/0x44 device_add_class_symlinks+0x90/0x13c device_add+0xf0/0x50c ec_device_probe+0x150/0x4f0 platform_probe+0xa0/0xe0 ... BUG: KASAN: invalid-access in __memcpy+0x44/0x230 Write at addr f5ffff809e2d33ac by task kworker/u32:5/125 Pointer tag: [f5], memory tag: [fe] Tainted : [W]=WARN, [O]=OOT_MODULE Hardware name: Google Navi unprovisioned 0x7FFFFFFF/sku0 board/sku3 Workqueue: events_unbound deferred_probe_work_func Call trace: __memcpy+0x44/0x230 cros_ec_check_features+0x60/0xcc [cros_ec_proto] cros_typec_probe+0xe8/0x6e0 [cros_ec_typec] platform_probe+0xa0/0xe0
AI Analysis
Technical Summary
The Linux kernel cros_ec driver had a use-after-free vulnerability caused by setting the device driver data pointer (dev_set_drvdata) before the probe function (ec_device_probe) completed successfully. If ec_device_probe failed, the cros_ec_dev structure memory was freed, but the stale pointer remained accessible via the platform device. Sub-drivers such as cros_ec_typec could then access this freed memory, causing use-after-free errors and potential kernel instability. The patch moves the dev_set_drvdata call to after successful initialization to prevent exposing stale pointers.
Potential Impact
This vulnerability can lead to use-after-free conditions in the kernel, potentially causing kernel crashes, memory corruption, or undefined behavior when sub-drivers access freed memory. There is no indication of remote exploitability or privilege escalation in the provided data. No known exploits are reported in the wild.
Mitigation Recommendations
A fix has been implemented in the Linux kernel to delay the dev_set_drvdata call until after the probe function completes successfully, preventing exposure of stale pointers. Users should update to the patched kernel version once available. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance.
In the Linux kernel, the following vulnerability has been resolved: mfd: cros_ec: Delay dev_set_drvdata() until probe success If ec_device_probe()… (CVE-2026-64420)
Description
In the Linux kernel, the following vulnerability has been resolved: mfd: cros_ec: Delay dev_set_drvdata() until probe success If ec_device_probe() fails, cros_ec_class_release releases memory for the cros_ec_dev structure. However, because the drvdata was already set, sub-drivers like cros_ec_typec can still retrieve the stale pointer via the platform device. This leads to a use-after-free when cros_ec_typec attempts to access &typec->ec->ec->dev on a device that has already been released. Move dev_set_drvdata() to ensure that the pointer is only made available once all initialization steps have succeeded. sysfs: cannot create duplicate filename '/class/chromeos/cros_ec' Call trace: sysfs_do_create_link_sd+0x94/0xdc sysfs_create_link+0x30/0x44 device_add_class_symlinks+0x90/0x13c device_add+0xf0/0x50c ec_device_probe+0x150/0x4f0 platform_probe+0xa0/0xe0 ... BUG: KASAN: invalid-access in __memcpy+0x44/0x230 Write at addr f5ffff809e2d33ac by task kworker/u32:5/125 Pointer tag: [f5], memory tag: [fe] Tainted : [W]=WARN, [O]=OOT_MODULE Hardware name: Google Navi unprovisioned 0x7FFFFFFF/sku0 board/sku3 Workqueue: events_unbound deferred_probe_work_func Call trace: __memcpy+0x44/0x230 cros_ec_check_features+0x60/0xcc [cros_ec_proto] cros_typec_probe+0xe8/0x6e0 [cros_ec_typec] platform_probe+0xa0/0xe0
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The Linux kernel cros_ec driver had a use-after-free vulnerability caused by setting the device driver data pointer (dev_set_drvdata) before the probe function (ec_device_probe) completed successfully. If ec_device_probe failed, the cros_ec_dev structure memory was freed, but the stale pointer remained accessible via the platform device. Sub-drivers such as cros_ec_typec could then access this freed memory, causing use-after-free errors and potential kernel instability. The patch moves the dev_set_drvdata call to after successful initialization to prevent exposing stale pointers.
Potential Impact
This vulnerability can lead to use-after-free conditions in the kernel, potentially causing kernel crashes, memory corruption, or undefined behavior when sub-drivers access freed memory. There is no indication of remote exploitability or privilege escalation in the provided data. No known exploits are reported in the wild.
Mitigation Recommendations
A fix has been implemented in the Linux kernel to delay the dev_set_drvdata call until after the probe function completes successfully, preventing exposure of stale pointers. Users should update to the patched kernel version once available. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-wgwq-6fx3-368g
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-64420"]
- Ecosystems
- []
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a6542099c2644c7f80832db
Added to database: 07/25/2026, 23:08:57 UTC
Last enriched: 07/25/2026, 23:22:19 UTC
Last updated: 09/07/2026, 10:52:10 UTC
Views: 33
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.