GPU VulnDB

Database/Kernel, userspace & hypervisor

Linux kernel mm/mempolicy: weighted-interleave bulk allocation sleeps in atomic context

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

Impact

alloc_pages_bulk_weighted_interleave() hardcoded GFP_KERNEL for its temporary weights array instead of honouring the caller's flags. A task with an MPOL_WEIGHTED_INTERLEAVE mempolicy that triggers a vmalloc-backed GFP_ATOMIC allocation - syzbot hit it through rhashtable_insert_slow() rehashing under rcu_read_lock() - performs a sleeping allocation in atomic/RCU context. The result is a might_alloc() splat and potential deadlock or crash, so this is an availability problem on the host. It is worth knowing about on NUMA-heavy GPU and CXL-tiered nodes, where weighted interleave is exactly the policy operators set to spread memory bandwidth across nodes, and where the affected task can be an ordinary unprivileged tenant process that set its own mempolicy. No privilege escalation or data disclosure is described.

Who can reach it

Local unprivileged process that sets MPOL_WEIGHTED_INTERLEAVE and drives kernel allocations reaching the bulk allocator from atomic context. No authentication beyond a local process; no remote path.

What to do

Move to a stable kernel that passes the caller's gfp flags through (four stable commits referenced) and reboot the affected nodes, draining GPU workloads first. No fixed release number is stated. Mitigation short of patching: avoid MPOL_WEIGHTED_INTERLEAVE for untrusted workloads, since the path is only reachable under that policy.

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.