CVE Catalog

CVE-2026-90211

Low risk· EPSS 10%
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.20%

10th percentile - higher than 10% of all known CVEs

Summary

In the Linux kernel on s390, the fetch destination register is not cleared on a faulting arena atomic RMW operation in BPF. When an atomic operation with BPF_FETCH faults on an unmapped arena page, the program resumes with an incorrect register value instead of zero, unlike other BPF_PROBE_* accesses. The fix fills probe->reg from bpf_atomic_load_reg().

Risk Assessment

An incorrect register value after a faulting BPF atomic operation may lead to unpredictable behavior of BPF programs and potential security or stability issues on s390 systems. This could be exploited to bypass expected BPF program logic.

Recommendation

Update the Linux kernel to a version containing the fix for this issue. Monitor s390 systems using BPF programs with atomic operations on arena pointers.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: bpf, s390: Clear fetch destination on faulting arena atomic Same missing register clear as on riscv64. A RMW atomic on an arena pointer is converted to BPF_PROBE_ATOMIC and gets an exception table entry, but bpf_jit_probe_atomic_pre() only fills in the arena base and the probe offset, leaving probe->reg at the -1 that bpf_jit_probe_init() set, which bpf_jit_probe_post() writes into the entry and ex_handler_bpf() then reads back as "there is nothing to clear". That is right for a plain BPF_{ADD,AND,OR,XOR}, which only writes memory, but an RMW carrying BPF_FETCH also reads the old value into a register: src_reg for BPF_{ADD,AND,OR,XOR} | BPF_FETCH and BPF_XCHG, and r0 for BPF_CMPXCHG. So on a fault over an unmapped arena page the program resumes at the landing pad with whatever that register held before the atomic instead of the 0 that every other BPF_PROBE_* access delivers. Fill probe->reg in from bpf_atomic_load_reg(). Unlike x86-64 and arm64, s390x does not report arena violations from its exception handler, so there is no access direction to correct here, only the missing register clear.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS