]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
bpf: Check active lock count in in_sleepable_context()
authorEmil Tsalapatis <emil@etsalapatis.com>
Tue, 6 Jan 2026 23:36:43 +0000 (18:36 -0500)
committerAlexei Starovoitov <ast@kernel.org>
Wed, 7 Jan 2026 01:43:19 +0000 (17:43 -0800)
commitb25b48c7d37617601ebc8cf2633bee95aa82c697
tree4dc62d3abe09ce179aebddf5657b604a480ea52d
parentea180ffbd27ce5abf2a06329fe1fc8d20dc9becf
bpf: Check active lock count in in_sleepable_context()

The in_sleepable_context() function is used to specialize the BPF code
in do_misc_fixups(). With the addition of nonsleepable arena kfuncs,
there are kfuncs whose specialization depends on whether we are
holding a lock. We should use the nonsleepable version while
holding a lock and the sleepable one when not.

Add a check for active_locks to account for locking when specializing
arena kfuncs.

Signed-off-by: Emil Tsalapatis <emil@etsalapatis.com>
Link: https://lore.kernel.org/r/20260106-arena-under-lock-v2-1-378e9eab3066@etsalapatis.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
kernel/bpf/verifier.c