CVE Catalog

CVE-2026-93135

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, when an architecture implements bpf_jit_inlines_helper_call(), the verifier skips rewriting the helper call offset. If JIT is disabled or JIT compilation fails, the program falls back to the interpreter, causing a jump to an invalid address and kernel panic. The fix sets prog->jit_required = 1 to reject such programs when JIT is unavailable.

Risk Assessment

Risk of kernel panic when executing BPF programs with inlined helpers if JIT is disabled or fails.

Recommendation

Apply the Linux kernel update to prevent kernel panic by rejecting BPF programs that require JIT.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: bpf: Reject programs with inlined helpers if JIT is not available When an architecture (such as LoongArch, ARM64, and RISC-V) implements bpf_jit_inlines_helper_call(), the verifier skips rewriting the helper call offset (insn->imm) in bpf_do_misc_fixups(). This is because the helper is expected to be inlined by the JIT compiler later. Therefore, insn->imm remains as the raw helper enum ID. However, if JIT is disabled at runtime (net.core.bpf_jit_enable=0) or if JIT compilation fails dynamically (e.g., due to OOM), the program falls back to the BPF interpreter. When the interpreter executes (__bpf_call_base + insn->imm) with the unpatched raw ID, it jumps into an invalid address space, triggering an instruction alignment fault or a kernel panic. Although these helpers have valid C implementations in the kernel, the omission of offset rewriting makes runtime interpreter fallback fatal. Fix this by setting 'prog->jit_required = 1' when helper call rewriting is skipped for JIT inlining. This ensures that such programs are safely rejected if JIT is not available, preventing the runtime kernel panic.

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