CVE intelligence and bounded remediation

CVE-2026-31526 — Linux Linux Kernel security vulnerability

Medium CVSS 5.5

In the Linux kernel, the following vulnerability has been resolved: bpf: Fix exception exit lock checking for subprogs process_bpf_exit_full() passes check_lock = !curframe to check_resource_leak(), which is false in cases when bpf_throw() is called from a static subprog. This makes check_resource_leak() to skip validation of active_rcu_locks, active_preempt_locks, and active_irq_id on exception exits from subprogs. At runtime bpf_throw() unwinds the stack via ORC without releasing any user-acquired locks, which may cause various issues as the result. Fix by setting check_lock = true for exception exits regardless of curframe, since exceptions bypass all intermediate frame cleanup. Update the error message prefix to "bpf_throw" for exception exits to distinguish them from normal BPF_EXIT. Fix reject_subprog_with_rcu_read_lock test which was previously passing for the wrong reason. Test program returned directly from the subprog call without closing the RCU section, so the error was triggered by the unclosed RCU lock on normal exit, not by bpf_throw. Update __msg annotations for affected tests to match the new "bpf_throw" error prefix. The spin_lock case is not affected because the…

Severity
Medium
CVSS
5.5 (3.1)
Published
2026-04-22
CISA KEV
Not currently listed
Ecosystem
linux/kernel
Weaknesses
CWE-667

Affected products

  • linux / linux_kernel
  • linux / linux_kernel / 7.0

Showing 2 representative product identities from 6 source matches. Confirm exact affected versions with the linked vendor and NVD evidence.

Matched remediation archetype

Race condition, TOCTOU, and lifecycle synchronization

This catalog composition supplies bounded fallback guidance. Explicitly reviewed curated workflows load with the complete record below.

Check exposure

  • Map concurrent actors, shared state, lock boundaries, signals, callbacks, retries, and check-then-use sequences in the affected path.
  • Determine whether untrusted users can influence timing, object names, filesystem state, or repeated state transitions.
  • Identify clustered and multi-process behavior that repository-local tests may not represent.

Remediate safely

  • Make the sensitive state transition atomic or protect it with a consistently ordered synchronization primitive.
  • Perform authorization and invariant checks on the same authoritative object and transaction used for the operation.
  • Use unique private resources, safe ownership transfer, and idempotent operations; add deterministic concurrency regression tests.

Authoritative sources

Complete CVE record and remediation plan

The detailed catalog view below loads this exact record, its source evidence, and the full seven-phase agentic change plan.