CVE Database›Document archive›CVE-2026-90046

CVE-2026-90046

kernel: mm/page_alloc: don't spin_trylock() in NMI on UP

Loading…

Severity

Moderate

Red Hat Product Security

4.7

CVSS 3.1

Review impact separately from score.

Published · September 16, 2026

Updated · October 24, 2026

Description

A flaw was found in the Linux kernel. Specifically, within the mm/page_alloc component, an issue exists with the spin_trylock() function when used in Non-Maskable Interrupt (NMI) contexts on Uniprocessor (UP) systems. A local attacker, by utilizing BPF (Berkeley Packet Filter) programs, could exploit this vulnerability to cause a kernel crash, leading to a denial of service, and potentially achieve privilege escalation.

Statement

free_pages_nolock can reach __free_frozen_pages with FPI_TRYLOCK from NMI context on non-SMP builds and the old guard did not use can_spin_trylock for this case. Using spin_trylock in this context can be unsafe and may corrupt page allocator state or crash the kernel when a BPF tracing program exercises the path from NMI. For the CVSS the PR:L is used because the realistic attacker is a local user or local process able to run relevant BPF tracing code or equivalent delegated tracing capability, while deployments that restrict BPF to full administrators may treat this as PR:H operationally. The issue is not network reachable.

CVSS score applicability

The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.

Mitigation

Mitigation for this issue is either not available or the currently available options don't meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability.

CVSS / CWE

CVSS 3.1 · 4.7
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H

CWE-667 · Improper Locking