CVE-2026-89986
Last modified
CVE-2026-89986 is a high-severity vulnerability rated 7.8/10 on the CVSS scale. In the Linux kernel, the following vulnerability has been resolved: mm/mempolicy: fix sleeping allocation in alloc_pages_bulk_weighted_interleave() syzbot reported a sleeping function called from invalid context splat in bucket_table_alloc(). When rhashtable_insert_slow() rehashes the table under rcu_read_lock(), it calls bucket_table_alloc(..., GFP_ATOMIC | __GFP_NOWARN). If the bucket table allocation uses vmalloc, __vmalloc_node_range_noprof() invokes vm_area_alloc_pages() -> alloc_pages_bulk_mempolicy_noprof() with the passed GFP_ATOMIC flags. If the current task has an MPOL_WEIGHTED_INTERLEAVE mempolicy, alloc_pages_bulk_weighted_interleave() is called and currently hardcodes GFP_KERNEL when allocating the temporary weights array, triggering a might_alloc() splat in atomic/RCU contexts. Pass the gfp flags (masked with GFP_RECLAIM_MASK to strip page-allocator zone modifiers like __GFP_HIGHMEM) received by alloc_pages_bulk_weighted_interleave() to kmalloc() instead of hardcoding GFP_KERNEL.
Description
In the Linux kernel, the following vulnerability has been resolved: mm/mempolicy: fix sleeping allocation in alloc_pages_bulk_weighted_interleave() syzbot reported a sleeping function called from invalid context splat in bucket_table_alloc(). When rhashtable_insert_slow() rehashes the table under rcu_read_lock(), it calls bucket_table_alloc(..., GFP_ATOMIC | __GFP_NOWARN). If the bucket table allocation uses vmalloc, __vmalloc_node_range_noprof() invokes vm_area_alloc_pages() -> alloc_pages_bulk_mempolicy_noprof() with the passed GFP_ATOMIC flags. If the current task has an MPOL_WEIGHTED_INTERLEAVE mempolicy, alloc_pages_bulk_weighted_interleave() is called and currently hardcodes GFP_KERNEL when allocating the temporary weights array, triggering a might_alloc() splat in atomic/RCU contexts. Pass the gfp flags (masked with GFP_RECLAIM_MASK to strip page-allocator zone modifiers like __GFP_HIGHMEM) received by alloc_pages_bulk_weighted_interleave() to kmalloc() instead of hardcoding GFP_KERNEL. Since the weights buffer is immediately initialized in full, kmalloc() is sufficient.
Metrics
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= fa3bea4e1f8202d787709b7e3654eb0a99aed758, < bcb3d0c867ee40dc48e9c085bf328fbc679b6656; >= fa3bea4e1f8202d787709b7e3654eb0a99aed758, < 0ceda28f371df9e0bbdaa29214f71fe8298f23d8; >= fa3bea4e1f8202d787709b7e3654eb0a99aed758, < 2943f1f4b7f2816177060eb9f551f2e6d8b629ba; >= fa3bea4e1f8202d787709b7e3654eb0a99aed758, < 540e583b66d6402bf556fde5e53c817a54c1afe5 |
| Linux | Linux | 6.9 |
References
Timeline
- Published
- Last Modified
- Status
- Received
Frequently Asked Questions
What is CVE-2026-89986?
How severe is CVE-2026-89986?
How do I fix CVE-2026-89986?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-89980In the Linux kernel, the following vulnerability has been re…8.4
- CVE-2026-89981In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89982In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89983In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89984In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89985In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-89987In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89988In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-89989In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89990In the Linux kernel, the following vulnerability has been re…9.8
- CVE-2026-89991In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89992In the Linux kernel, the following vulnerability has been re…8.4
Are you affected by CVE-2026-89986?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
