On Wed, 1 Apr 2026 at 21:11, Varun R Mallya <[email protected]> wrote: > > kprobe.multi programs run in atomic/RCU context and cannot sleep. > However, bpf_kprobe_multi_link_attach() did not validate whether the > program being attached had the sleepable flag set, allowing sleepable > helpers such as bpf_copy_from_user() to be invoked from a non-sleepable > context. > > This causes a "sleeping function called from invalid context" splat: > > BUG: sleeping function called from invalid context at > ./include/linux/uaccess.h:169 > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 1787, name: sudo > preempt_count: 1, expected: 0 > RCU nest depth: 2, expected: 0 > > Fix this by rejecting sleepable programs early in > bpf_kprobe_multi_link_attach(), before any further processing. > > Fixes: 0dcac2725406 ("bpf: Add multi kprobe link") > Signed-off-by: Varun R Mallya <[email protected]> > ---
Acked-by: Kumar Kartikeya Dwivedi <[email protected]> Jiri, would be great if you can ack both patches too.
