CVE-2025-38280

Summary

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).

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxfa9dd599b4dae841924b022768354cfde9affecb < e7fb4ebee6e900899d2b2e5852c3e2eafcbcad66affected
LinuxLinuxfa9dd599b4dae841924b022768354cfde9affecb < ef92b96530d1731d9ac167bc7c193c683cd78fffaffected
LinuxLinuxfa9dd599b4dae841924b022768354cfde9affecb < 6f639c25bfad17d9fd7379ab91ff9678ea9aac85affected
LinuxLinuxfa9dd599b4dae841924b022768354cfde9affecb < 2bc6dffb4b72d53d6a6ada510269bf548c3f7ae0affected
LinuxLinuxfa9dd599b4dae841924b022768354cfde9affecb < 0b9bb52796b239de6792d0d68cdc6eb505ebff96affected
LinuxLinuxfa9dd599b4dae841924b022768354cfde9affecb < 86bc9c742426a16b52a10ef61f5b721aecca2344affected
LinuxLinux5124abda3060e2eab506fb14a27acadee3c3e396affected
LinuxLinux234646dcfc5f531c74ab20595e89eacd62e3611faffected
LinuxLinux4.9.190 < 4.10affected
LinuxLinux4.14.140 < 4.15affected
LinuxLinux4.16affected
LinuxLinux0 < 4.16unaffected
LinuxLinux5.15.186 <= 5.15.*unaffected
LinuxLinux6.1.142 <= 6.1.*unaffected
LinuxLinux6.6.94 <= 6.6.*unaffected
LinuxLinux6.12.34 <= 6.12.*unaffected
LinuxLinux6.15.3 <= 6.15.*unaffected
LinuxLinux6.16 <= *unaffected

Weaknesses

ADP Enrichment

CVE Program Container

Additional References

Additional References

References