CVE-2026-46093 PUBLISHED

mm/vmalloc: take vmap_purge_lock in shrinker

Assigner: Linux
Reserved: 13.05.2026 Published: 27.05.2026 Updated: 27.05.2026

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

mm/vmalloc: take vmap_purge_lock in shrinker

decay_va_pool_node() can be invoked concurrently from two paths: __purge_vmap_area_lazy() when pools are being purged, and the shrinker via vmap_node_shrink_scan().

However, decay_va_pool_node() is not safe to run concurrently, and the shrinker path currently lacks serialization, leading to races and possible leaks.

Protect decay_va_pool_node() by taking vmap_purge_lock in the shrinker path to ensure serialization with purge users.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 7679ba6b36dbb300b757b672d6a32a606499e14b to 687ccdf582169cd680aeaf24cc953807c4cd4345 (excl.)
  • affected from 7679ba6b36dbb300b757b672d6a32a606499e14b to 12f2341b4c235d5593a433abac201c1c6725787f (excl.)
  • affected from 7679ba6b36dbb300b757b672d6a32a606499e14b to ec05f51f1e65bce95528543eb73fda56fd201d94 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 6.9 is affected
  • unaffected from 0 to 6.9 (excl.)
  • unaffected from 6.18.27 to 6.18.* (incl.)
  • unaffected from 7.0.4 to 7.0.* (incl.)
  • unaffected from 7.1-rc1 to * (incl.)

References