In the Linux kernel, the following vulnerability has been resolved:
bpf: Check rcu_read_lock_trace_held() in bpf_map_lookup_percpu_elem()
bpf_map_lookup_percpu_elem() helper is also available for sleepable bpf program. When BPF JIT is disabled or under 32-bit host, bpf_map_lookup_percpu_elem() will not be inlined. Using it in a sleepable bpf program will trigger the warning in bpf_map_lookup_percpu_elem(), because the bpf program only holds rcu_read_lock_trace lock. Therefore, add the missed check.
| Software | From | Fixed in |
|---|---|---|
| linux / linux_kernel | 5.19 | 6.1.142 |
| linux / linux_kernel | 6.2 | 6.6.95 |
| linux / linux_kernel | 6.7 | 6.12.35 |
| linux / linux_kernel | 6.13 | 6.15.4 |
| debian / debian_linux | 11.0 | 11.0.x |