CVE-2025-38280
kernel: bpf: Avoid __bpf_prog_ret0_warn when jit fails
Severity
ModerateRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · July 10, 2025
Updated · June 30, 2026
Description
In the Linux kernel, the following vulnerability has been resolved:
bpf: Avoid __bpf_prog_ret0_warn when jit fails
syzkaller reported an issue:
WARNING: CPU: 3 PID: 217 at kernel/bpf/core.c:2357 __bpf_prog_ret0_warn+0xa/0x20 kernel/bpf/core.c:2357 Modules linked in: CPU: 3 UID: 0 PID: 217 Comm: kworker/u32:6 Not tainted 6.15.0-rc4-syzkaller-00040-g8bac8898fe39 RIP: 0010:__bpf_prog_ret0_warn+0xa/0x20 kernel/bpf/core.c:2357 Call Trace: <TASK> bpf_dispatcher_nop_func include/linux/bpf.h:1316 [inline] __bpf_prog_run include/linux/filter.h:718 [inline] bpf_prog_run include/linux/filter.h:725 [inline] cls_bpf_classify+0x74a/0x1110 net/sched/cls_bpf.c:105 ...
When creating bpf program, 'fp->jit_requested' depends on bpf_jit_enable.
This issue is triggered because of CONFIG_BPF_JIT_ALWAYS_ON is not set
and bpf_jit_enable is set to 1, causing the arch to attempt JIT the prog,
but jit failed due to FAULT_INJECTION. As a result, incorrectly
treats the program as valid, when the program runs it calls
__bpf_prog_ret0_warn and triggers the WARN_ON_ONCE(1).
Statement
A flaw was found in the BPF JIT selection logic. When CONFIG_BPF_JIT_ALWAYS_ON is not set and bpf_jit_enable=1, the system may attempt to JIT-compile a BPF program. If JIT compilation fails (e.g., due to fault injection or unsupported architecture), the program may still be treated as valid. When later executed, this leads to invocation of __bpf_prog_ret0_warn() which triggers WARN_ON_ONCE(1) and kernel warning. This issue was reported by syzkaller and occurs due to incorrectly treating a non-JITed program as valid. For the Red Hat Enterprise Linux the BPF not accessible by default (and only root user can enable it).
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
No mitigation is specified in collected source.
CVSS / CWE
CVSS 3.1 · 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CWE-670 · Always-Incorrect Control Flow Implementation