On Thu, May 26, 2022 at 12:16:08PM -0700, Song Liu wrote: > Kernel function urandom_read is replaced with urandom_read_iter. > Therefore, kprobe on urandom_read is not working any more: > > [root@eth50-1 bpf]# ./test_progs -n 161 > test_stacktrace_build_id:PASS:skel_open_and_load 0 nsec > libbpf: kprobe perf_event_open() failed: No such file or directory > libbpf: prog 'oncpu': failed to create kprobe 'urandom_read+0x0' \ > perf event: No such file or directory > libbpf: prog 'oncpu': failed to auto-attach: -2 > test_stacktrace_build_id:FAIL:attach_tp err -2 > 161 stacktrace_build_id:FAIL > > Fix this by replacing urandom_read with urandom_read_iter in the test. > > Fixes: 1b388e7765f2 ("random: convert to using fops->read_iter()") > Reported-by: Mykola Lysenko <mykolal@xxxxxx> > Signed-off-by: Song Liu <song@xxxxxxxxxx> > --- > tools/testing/selftests/bpf/progs/test_stacktrace_build_id.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/testing/selftests/bpf/progs/test_stacktrace_build_id.c b/tools/testing/selftests/bpf/progs/test_stacktrace_build_id.c > index 6c62bfb8bb6f..0c4426592a26 100644 > --- a/tools/testing/selftests/bpf/progs/test_stacktrace_build_id.c > +++ b/tools/testing/selftests/bpf/progs/test_stacktrace_build_id.c > @@ -39,7 +39,7 @@ struct { > __type(value, stack_trace_t); > } stack_amap SEC(".maps"); > > -SEC("kprobe/urandom_read") > +SEC("kprobe/urandom_read_iter") > int oncpu(struct pt_regs *args) > { > __u32 max_len = sizeof(struct bpf_stack_build_id) > -- > 2.30.2 > Acked-by: David Vernet <void@xxxxxxxxxxxxx>