/linux/tools/testing/selftests/bpf/prog_tests/ |
H A D | fill_link_info.c | 277 ASSERT_EQ(info.kprobe_multi.count, KMULTI_CNT, "func_cnt"); in verify_kmulti_link_info() 278 flags = info.kprobe_multi.flags & BPF_F_KPROBE_MULTI_RETURN; in verify_kmulti_link_info() 284 if (!info.kprobe_multi.addrs) { in verify_kmulti_link_info() 285 info.kprobe_multi.addrs = ptr_to_u64(addrs); in verify_kmulti_link_info() 286 info.kprobe_multi.cookies = ptr_to_u64(cookies); in verify_kmulti_link_info() 306 info.kprobe_multi.count = KMULTI_CNT; in verify_kmulti_invalid_user_buffer() 310 info.kprobe_multi.addrs = ptr_to_u64(addrs); in verify_kmulti_invalid_user_buffer() 311 info.kprobe_multi.count = 0; in verify_kmulti_invalid_user_buffer() 317 info.kprobe_multi.count = KMULTI_CNT - 1; in verify_kmulti_invalid_user_buffer() 326 info.kprobe_multi.count = KMULTI_CNT + 1; in verify_kmulti_invalid_user_buffer() [all …]
|
H A D | kprobe_multi_test.c | 13 static void kprobe_multi_test_run(struct kprobe_multi *skel, bool test_return) in kprobe_multi_test_run() 46 struct kprobe_multi *skel = NULL; in test_skel_api() 67 struct kprobe_multi *skel = NULL; in test_link_api() 79 opts->kprobe_multi.flags = BPF_F_KPROBE_MULTI_RETURN; in test_link_api() 115 opts.kprobe_multi.addrs = (const unsigned long*) addrs; in test_link_api_addrs() 116 opts.kprobe_multi.cnt = ARRAY_SIZE(addrs); in test_link_api_addrs() 134 opts.kprobe_multi.syms = syms; in test_link_api_syms() 135 opts.kprobe_multi.cnt = ARRAY_SIZE(syms); in test_link_api_syms() 143 struct kprobe_multi *skel = NULL; in test_attach_api() 220 struct kprobe_multi *skel = NULL; in test_attach_api_fails() [all …]
|
H A D | kprobe_multi_testmod_test.c | 9 static void kprobe_multi_testmod_check(struct kprobe_multi *skel) in kprobe_multi_testmod_check() 22 struct kprobe_multi *skel = NULL; in test_testmod_attach_api()
|
H A D | module_attach.c | 108 link = bpf_program__attach(skel->progs.kprobe_multi); in test_module_attach()
|
H A D | uprobe_multi_test.c | 687 opts.kprobe_multi.flags = 0; in __test_link_api() 693 opts.kprobe_multi.flags = BPF_F_UPROBE_MULTI_RETURN; in __test_link_api() 699 opts.kprobe_multi.flags = 0; in __test_link_api() 705 opts.kprobe_multi.flags = BPF_F_UPROBE_MULTI_RETURN; in __test_link_api() 711 opts.kprobe_multi.flags = 0; in __test_link_api()
|
/linux/tools/bpf/bpftool/ |
H A D | link.c | 292 info->kprobe_multi.flags & BPF_F_KPROBE_MULTI_RETURN); in show_kprobe_multi_json() 293 jsonw_uint_field(json_wtr, "func_cnt", info->kprobe_multi.count); in show_kprobe_multi_json() 294 jsonw_uint_field(json_wtr, "missed", info->kprobe_multi.missed); in show_kprobe_multi_json() 297 data = get_addr_cookie_array(u64_to_ptr(info->kprobe_multi.addrs), in show_kprobe_multi_json() 298 u64_to_ptr(info->kprobe_multi.cookies), in show_kprobe_multi_json() 299 info->kprobe_multi.count); in show_kprobe_multi_json() 324 if (j++ == info->kprobe_multi.count) in show_kprobe_multi_json() 720 if (!info->kprobe_multi.count) in show_kprobe_multi_plain() 723 if (info->kprobe_multi.flags & BPF_F_KPROBE_MULTI_RETURN) in show_kprobe_multi_plain() 727 printf("func_cnt %u ", info->kprobe_multi.count); in show_kprobe_multi_plain() [all …]
|
/linux/tools/lib/bpf/ |
H A D | bpf.c | 771 attr.link_create.kprobe_multi.flags = OPTS_GET(opts, kprobe_multi.flags, 0); in bpf_link_create() 772 attr.link_create.kprobe_multi.cnt = OPTS_GET(opts, kprobe_multi.cnt, 0); in bpf_link_create() 773 attr.link_create.kprobe_multi.syms = ptr_to_u64(OPTS_GET(opts, kprobe_multi.syms, 0)); in bpf_link_create() 774 attr.link_create.kprobe_multi.addrs = ptr_to_u64(OPTS_GET(opts, kprobe_multi.addrs, 0)); in bpf_link_create() 775 attr.link_create.kprobe_multi.cookies = ptr_to_u64(OPTS_GET(opts, kprobe_multi.cookies, 0)); in bpf_link_create() 776 if (!OPTS_ZEROED(opts, kprobe_multi)) in bpf_link_create()
|
H A D | bpf.h | 412 } kprobe_multi; member
|
H A D | libbpf.c | 11620 lopts.kprobe_multi.syms = syms; in bpf_program__attach_kprobe_multi_opts() 11621 lopts.kprobe_multi.addrs = addrs; in bpf_program__attach_kprobe_multi_opts() 11622 lopts.kprobe_multi.cookies = cookies; in bpf_program__attach_kprobe_multi_opts() 11623 lopts.kprobe_multi.cnt = cnt; in bpf_program__attach_kprobe_multi_opts() 11624 lopts.kprobe_multi.flags = retprobe ? BPF_F_KPROBE_MULTI_RETURN : 0; in bpf_program__attach_kprobe_multi_opts()
|
/linux/tools/testing/selftests/bpf/ |
H A D | DENYLIST.aarch64 | 5 module_attach # prog 'kprobe_multi': failed to auto-attach: -95
|
/linux/tools/testing/selftests/bpf/progs/ |
H A D | test_module_attach.c | 137 int BPF_PROG(kprobe_multi) in BPF_PROG() argument
|
/linux/kernel/trace/ |
H A D | bpf_trace.c | 2689 u64 __user *ucookies = u64_to_user_ptr(info->kprobe_multi.cookies); in bpf_kprobe_multi_link_fill_link_info() 2690 u64 __user *uaddrs = u64_to_user_ptr(info->kprobe_multi.addrs); in bpf_kprobe_multi_link_fill_link_info() 2692 u32 ucount = info->kprobe_multi.count; in bpf_kprobe_multi_link_fill_link_info() 2701 info->kprobe_multi.count = kmulti_link->cnt; in bpf_kprobe_multi_link_fill_link_info() 2702 info->kprobe_multi.flags = kmulti_link->flags; in bpf_kprobe_multi_link_fill_link_info() 2703 info->kprobe_multi.missed = kmulti_link->fp.nmissed; in bpf_kprobe_multi_link_fill_link_info() 2998 flags = attr->link_create.kprobe_multi.flags; in bpf_kprobe_multi_link_attach() 3002 uaddrs = u64_to_user_ptr(attr->link_create.kprobe_multi.addrs); in bpf_kprobe_multi_link_attach() 3003 usyms = u64_to_user_ptr(attr->link_create.kprobe_multi.syms); in bpf_kprobe_multi_link_attach() 3007 cnt = attr->link_create.kprobe_multi.cnt; in bpf_kprobe_multi_link_attach() [all …]
|
/linux/include/linux/ |
H A D | bpf_types.h | 154 BPF_LINK_TYPE(BPF_LINK_TYPE_KPROBE_MULTI, kprobe_multi)
|
/linux/tools/testing/selftests/bpf/benchs/ |
H A D | bench_trigger.c | 476 BENCH_TRIG_KERNEL(kprobe_multi, "kprobe-multi");
|
/linux/include/uapi/linux/ |
H A D | bpf.h | 1753 } kprobe_multi; member 6695 } kprobe_multi; member
|
/linux/tools/include/uapi/linux/ |
H A D | bpf.h | 1753 } kprobe_multi; member 6695 } kprobe_multi; member
|