GPU VulnDB

Database/Kernel, userspace & hypervisor

Linux mm: shrinker_info teardown races with expansion, giving a double free of memcg shrinker maps

CVSS 7.8CVE-2026-64418Kernel, userspace & hypervisorcurated

Impact

alloc_shrinker_info() dropped shrinker_mutex before freeing a partially initialized shrinker_info array for a memcg that is still visible to iteration, so a concurrent shrinker_alloc() can copy from - and later kvfree_rcu() - a pointer the first path has already freed. The same window exists on the mem_cgroup_css_online() unwind path when an objcg allocation fails after shrinker_info was published. The result is a double free or use-after-free of kernel heap, i.e. a node crash or a corruption primitive. Container hosts are the population that hits this: memcgs are created and destroyed on every pod start and stop, and the allocation failure that opens the window is most likely exactly when the node is under memory pressure. A GPU node lost this way takes its running training jobs with it and is expensive to drain and reschedule.

Who can reach it

Local, and not a clean attacker-controlled trigger. It needs a cgroup coming online whose shrinker_info allocation fails to race a shrinker registration. Anything that can create cgroups at volume (a pod-spawning agent, nested containers) while driving the node toward memory exhaustion raises the odds; the record describes no deterministic trigger and no remote path.

What to do

Take the stable kernel update and reboot each node; the fix is a locking change in mm, so there is nothing to toggle at runtime. Four stable commits are listed and no fixed release version. Reasonable to bundle into the next scheduled kernel maintenance rather than an out-of-band window, given the race needs an allocation failure to open it.

References

Related entries

All Kernel, userspace & hypervisor entries

This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.