CVE-2026-64420

mfd: cros_ec: Delay dev_set_drvdata() until probe success

HIGH
7
CVSS Score
Published: July 25, 2026 at 08:50 AM UTC
Updated: October 19, 2026 at 09:17 PM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH7
Exploit prediction
EPSS 0.1%
SSVC
No known exploit

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

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

4.12 ≤ v < 5.10.2615.11 ≤ v < 5.15.2125.16 ≤ v < 6.1.1786.13 ≤ v < 6.18.396.19 ≤ v < 7.1.46.2 ≤ v < 6.6.1456.7 ≤ v < 6.12.961c1d152cc5ac3a67d199728a9ba0b4f54a498f8b4.12
Vendor states this is fixed in 24522713034d521ea4b5f5f36342e2b2f7e73bd6 (fixed)
Vendor states this is fixed in 257203d83204b192d1265a916b42ca0d499bb117 (fixed)
Vendor states this is fixed in 729ae27dc2503a7c1f92da1859efb45da03e4fa0 (fixed)
Vendor states this is fixed in 8b2c1d41bc36c100b38ce5ee6def246c527eaf8a (fixed)
Vendor states this is fixed in b5f41d5bf08e7b1b14fa0bd640975e6d78dc006d (fixed)
Vendor states this is fixed in ed2941e5db016a0c600b25f1972620e6e223d9fa (fixed)
Vendor states this is fixed in f7e81dc181d9fe8ab977158042cd193e8cc12091 (fixed)
Vendor states this is fixed in fc030c5b116f668d4ca86dca63742ddbc98d1665 (fixed)
Vendor states this is fixed in 4.12 (unaffected)
Vendor states this is fixed in 5.10.261 (unaffected)
Vendor states this is fixed in 5.15.212 (unaffected)
Vendor states this is fixed in 6.1.178 (unaffected)
Vendor states this is fixed in 6.12.96 (unaffected)
Vendor states this is fixed in 6.18.39 (unaffected)
Vendor states this is fixed in 6.6.145 (unaffected)
Vendor states this is fixed in 7.1.4 (unaffected)
Vendor states this is fixed in 7.2 (unaffected)

SSVC — Action Prioritization

SSVCNo known exploitNot automatableTotal impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

7HIGHLinux
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-476CWE-416

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card