This is offtopic, sorry for the spam, but... On 08/26, Jiri Olsa wrote: > > On Mon, Aug 26, 2024 at 01:57:52PM +0200, Oleg Nesterov wrote: > > > > Does bpftrace use bpf_uprobe_multi_link_attach/etc ? I guess not... > > Then which userspace tool uses this code? ;) > > yes, it will trigger if you attach to multiple uprobes, like with your > test example with: > > # bpftrace -p xxx -e 'uprobe:./ex:func* { printf("%d\n", pid); }' Hmm. I reserved the testing machine with fedora 40 to play with bpftrace. dummy.c: #include <unistd.h> void func1(void) {} void func2(void) {} int main(void) { for (;;) pause(); } If I do # ./dummy & # bpftrace -p $! -e 'uprobe:./dummy:func* { printf("%d\n", pid); }' and run # bpftrace -e 'kprobe:__uprobe_register { printf("%s\n", kstack); }' on another console I get Attaching 1 probe... __uprobe_register+1 probe_event_enable+399 perf_trace_event_init+440 perf_uprobe_init+152 perf_uprobe_event_init+74 perf_try_init_event+71 perf_event_alloc+1681 __do_sys_perf_event_open+447 do_syscall_64+130 entry_SYSCALL_64_after_hwframe+118 __uprobe_register+1 probe_event_enable+399 perf_trace_event_init+440 perf_uprobe_init+152 perf_uprobe_event_init+74 perf_try_init_event+71 perf_event_alloc+1681 __do_sys_perf_event_open+447 do_syscall_64+130 entry_SYSCALL_64_after_hwframe+118 so it seems that bpftrace doesn't use bpf_uprobe_multi_link_attach() (called by sys_bpf(BPF_LINK_CREATE) ?) in this case. But again, this is offtopic, please forget. Oleg.