CVE-2026-89991
Last modified
CVE-2026-89991 is a vulnerability of currently unknown severity. In the Linux kernel, the following vulnerability has been resolved: bpf: Fix infinite loop in pcpu_freelist push with one possible CPU __pcpu_freelist_push() can loop forever when only one CPU is possible and an NMI re-enters pcpu_freelist_push() while the interrupted context holds that CPU's freelist lock. After the current-CPU fast path fails, the fallback loop walks cpu_possible_mask while skipping the current CPU. With CONFIG_SMP=n, or when an SMP kernel is limited to one possible CPU with nr_cpus=1 or possible_cpus=1, there are no other possible CPUs to examine.
Description
In the Linux kernel, the following vulnerability has been resolved: bpf: Fix infinite loop in pcpu_freelist push with one possible CPU __pcpu_freelist_push() can loop forever when only one CPU is possible and an NMI re-enters pcpu_freelist_push() while the interrupted context holds that CPU's freelist lock. After the current-CPU fast path fails, the fallback loop walks cpu_possible_mask while skipping the current CPU. With CONFIG_SMP=n, or when an SMP kernel is limited to one possible CPU with nr_cpus=1 or possible_cpus=1, there are no other possible CPUs to examine. The loop therefore makes no lock acquisition attempt and can never make progress. The following stack was observed on a UP system: NMI context: pcpu_freelist_push free_htab_elem htab_map_delete_elem [perf-event BPF program] __perf_event_overflow perf_event_nmi_handler exc_nmi Interrupted context: __pcpu_freelist_push pcpu_freelist_push free_htab_elem htab_map_delete_elem [raw_tp/sys_enter BPF program] __bpf_trace_sys_enter do_syscall_64 raw_res_spin_lock() detects the same-CPU recursive acquisition and returns -EDEADLK, but the subsequent fallback loop has no candidate head on a system with one possible CPU. Restore the extra fallback head that existed before the rqspinlock conversion. Keep the current-CPU fast path, then try the other possible CPUs and finally the extra head. The additional head lets a push, which cannot fail without losing a preallocated element, make progress when the only per-CPU head is held by the interrupted context. Also check the extra head from the pop path so that nodes placed there can be reused.
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= f2ac0e5d1c4dcc55d6510dcaefb8f45661a9a1fb, < a24a146ae2cb5d9faeea96d10010fcb6579abe1f; >= f2ac0e5d1c4dcc55d6510dcaefb8f45661a9a1fb, < a5b5e62baceff9e252c6535cf42a027d04f226cf; >= f2ac0e5d1c4dcc55d6510dcaefb8f45661a9a1fb, < efebf6496685c93150df5bb0794363ae70c5f58a |
| Linux | Linux | 6.15 |
References
Timeline
- Published
- Last Modified
- Status
- Received
Frequently Asked Questions
What is CVE-2026-89991?
How severe is CVE-2026-89991?
How do I fix CVE-2026-89991?
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-89985In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-89986In 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-89992In the Linux kernel, the following vulnerability has been re…8.4
- CVE-2026-89993In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89994In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-89995In the Linux kernel, the following vulnerability has been re…8.8
- CVE-2026-89996In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89997In the Linux kernel, the following vulnerability has been re…7.8
Are you affected by CVE-2026-89991?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
