CVE-2026-90046
7.8 HIGHPublished 2026-09-16 · Updated 2026-09-16
AI risk analysis
- Summary
- The flaw involves a race condition in the Linux kernel's page allocation code, specifically in the handling of NMI (Non-Maskable Interrupt) on UP (Uniprocessor) systems, which could lead to kernel crashes and potential privilege escalation.
- Exploitability
- Exploitation is considered moderate to hard, requiring the presence of BPF programs in NMI context on non-SMP builds. Local attackers with the ability to run BPF programs could potentially exploit this.
- Blast radius
- If exploited, the impact is limited to the local system, potentially allowing local attackers to escalate privileges, but the likelihood of this occurring in real-world scenarios is low.
- Detection
- No reliable host or network indicator is derivable from the published description.
- Prioritized remediation
- Upgrade to the Linux kernel version 6.1.19 or later.
Analysis generated locally by qwen2.5:7b-instruct (no data left the box). AI-assisted — verify against primary sources before acting.
NVD description
In the Linux kernel, the following vulnerability has been resolved: mm/page_alloc: don't spin_trylock() in NMI on UP Patch series "mm/page_alloc: fixes for free_pages_nolock() on RT/UP". Pre-existing bugs found by Sashiko during review of this other series: https://lore.kernel.org/all/[email protected]/ I have not reproduced these bugs, and I suspect there is no real-world user that is affected by them. This patch (of 2): As noted in can_spin_trylock(), using this is unsafe in this context. commit 620b46ed6ae17 ("mm/page_alloc: return NULL early from alloc_frozen_pages_nolock() in NMI on UP") fixed this on the alloc side but missed the free side. Impact: If BPF programs using these features in NMI (probably tracing) are present on non-SMP builds this might crash the kernel and is probably exploitable by local attackers for privilege escalation.
CVSS vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
References
Data: NVD (public domain). Analysis: local $0 model. Defensive use only.