CVE-2026-64418: linux Race Condition
Vulnerability summary
CVE-2026-64418 is a high (CVSS 7.8) Race Condition vulnerability in linux. EPSS estimates a 0.10% chance of exploitation in the next 30 days, higher than 0.6% of scored vulnerabilities.
Advisory lineage
Upstream 0 · Downstream 21 · Related 20Timeline
- 25-07-2026PublishedVulnerability first disclosed.
- 17-08-2026Last modifiedVulnerability information updated.
Description
In the Linux kernel, the following vulnerability has been resolved: mm: shrinker: fix shrinker_info teardown race with expansion expand_shrinker_info() iterates all visible memcgs under shrinker_mutex, including memcgs that have not finished ->css_online() yet. Once pn->shrinker_info has been published, teardown must stay serialized with expand_shrinker_info() until that memcg is either fully online or no longer visible to iteration. Today alloc_shrinker_info() breaks that rule by dropping shrinker_mutex before freeing a partially initialized shrinker_info array, which may cause the following race: CPU0 CPU1 ==== ==== css_create --> list_add_tail_rcu(&css->sibling, &parent_css->children); online_css --> mem_cgroup_css_online --> alloc_shrinker_info --> alloc node0 info rcu_assign_pointer(C->node0->shrinker_info, old0) alloc node1 info -> FAIL -> goto err mutex_unlock(shrinker_mutex) shrinker_alloc() --> shrinker_memcg_alloc --> mutex_lock(shrinker_mutex) expand_shrinker_info --> mem_cgroup_iter see the memcg expand_one_shrinker_info --> old0 = C->node0->shrinker_info memcpy(new->unit, old0->unit, ...); free_shrinker_info --> kvfree(old0); /* double free !! */ kvfree_rcu(old0, rcu); The same problem exists later in mem_cgroup_css_online(). If alloc_shrinker_info() succeeds but a subsequent objcg allocation fails, the free_objcg -> free_shrinker_info() unwind path tears down the already published pn->shrinker_info arrays without shrinker_mutex. The expand_one_shrinker_info() can race with that teardown in the same way, leading to use-after-free or double-free of the old shrinker_info. Fix this by serializing shrinker_info teardown with shrinker_mutex, and by keeping alloc_shrinker_info() error cleanup inside the locked section.
CVSS metrics
4 scores · 4 sources · 1 version- OSV · UbuntuEcosystem advisory · calculated7.8HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- OSV · DebianEcosystem advisory · calculated7.8HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- NVDNIST7.8HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
EPSS trend
Probability
0.10%
Chance of exploitation in the next 30 days
Percentile
1%
Versus all other CVEs
30-day change
0.00 pp
From 0.10% on 21-09-2026
Known exploited
Compare KEV catalogsNot in any of the 3 tracked catalogs.
Public exploits
0 foundNo public exploits indexed.
Weaknesses
CWE · root causeAffected systems
Ubuntu142 products
- linuxAll versions (No fix recorded) | < 6.8.0-147.147 | < 7.0.0-31.31
- linux-allwinner-5.19All versions (No fix recorded)
- linux-awsAll versions (No fix recorded) | < 6.8.0-1067.70 | < 7.0.0-1012.12
- linux-aws-5.0All versions (No fix recorded)
- linux-aws-5.11All versions (No fix recorded)
Debian2 products
- linux< 6.12.96-1 | < 7.1.4-1
- linux-6.12< 6.12.100-1~deb12u1
Linux2 products
- linux≥ 307bececcd1205bcb67a3c0d53a69db237ccc9d4, < b9a280a9a454ed514636351d53fe2a233dc5054b | ≥ 307bececcd1205bcb67a3c0d53a69db237ccc9d4, < 6465ff3ce65131c774a312d450abe10f4b9f3875 | ≥ 307bececcd1205bcb67a3c0d53a69db237ccc9d4, < 284c267f013e45d8c89d9fb9373105dc8e6c0947 | ≥ 307bececcd1205bcb67a3c0d53a69db237ccc9d4, < 65476d31d8056e859c48580f82295ce159196ffe | 6.7
- linux_kernel≥ 6.7, < 6.12.96 | ≥ 6.13, < 6.18.39 | ≥ 6.19, < 7.1.4 | 7.2:rc1 | 7.2:rc2
3 vendors · 146 products