/kernel/linux/linux-6.6/tools/testing/selftests/bpf/prog_tests/ |
H A D | fill_link_info.c | 212 ASSERT_EQ(info.kprobe_multi.count, KMULTI_CNT, "func_cnt"); in verify_kmulti_link_info() 213 flags = info.kprobe_multi.flags & BPF_F_KPROBE_MULTI_RETURN; in verify_kmulti_link_info() 219 if (!info.kprobe_multi.addrs) { in verify_kmulti_link_info() 220 info.kprobe_multi.addrs = ptr_to_u64(addrs); in verify_kmulti_link_info() 237 info.kprobe_multi.count = KMULTI_CNT; in verify_kmulti_invalid_user_buffer() 241 info.kprobe_multi.addrs = ptr_to_u64(addrs); in verify_kmulti_invalid_user_buffer() 242 info.kprobe_multi.count = 0; in verify_kmulti_invalid_user_buffer() 248 info.kprobe_multi.count = KMULTI_CNT - 1; in verify_kmulti_invalid_user_buffer() 257 info.kprobe_multi.count = KMULTI_CNT + 1; in verify_kmulti_invalid_user_buffer() 263 info.kprobe_multi in verify_kmulti_invalid_user_buffer() [all...] |
H A D | kprobe_multi_test.c | 3 #include "kprobe_multi.skel.h" 10 static void kprobe_multi_test_run(struct kprobe_multi *skel, bool test_return) in kprobe_multi_test_run() 43 struct kprobe_multi *skel = NULL; in test_skel_api() 64 struct kprobe_multi *skel = NULL; in test_link_api() 76 opts->kprobe_multi.flags = BPF_F_KPROBE_MULTI_RETURN; in test_link_api() 112 opts.kprobe_multi.addrs = (const unsigned long*) addrs; in test_link_api_addrs() 113 opts.kprobe_multi.cnt = ARRAY_SIZE(addrs); in test_link_api_addrs() 131 opts.kprobe_multi.syms = syms; in test_link_api_syms() 132 opts.kprobe_multi.cnt = ARRAY_SIZE(syms); in test_link_api_syms() 140 struct kprobe_multi *ske in test_attach_api() [all...] |
H A D | uprobe_multi_test.c | 265 opts.kprobe_multi.flags = 0; in __test_link_api() 271 opts.kprobe_multi.flags = BPF_F_UPROBE_MULTI_RETURN; in __test_link_api() 277 opts.kprobe_multi.flags = 0; in __test_link_api() 283 opts.kprobe_multi.flags = BPF_F_UPROBE_MULTI_RETURN; in __test_link_api() 289 opts.kprobe_multi.flags = 0; in __test_link_api()
|
H A D | kprobe_multi_testmod_test.c | 3 #include "kprobe_multi.skel.h" 7 static void kprobe_multi_testmod_check(struct kprobe_multi *skel) in kprobe_multi_testmod_check() 20 struct kprobe_multi *skel = NULL; in test_testmod_attach_api()
|
H A D | bpf_cookie.c | 13 #include "kprobe_multi.skel.h" 71 static void kprobe_multi_test_run(struct kprobe_multi *skel) in kprobe_multi_test_run() 103 struct kprobe_multi *skel = NULL; in kprobe_multi_link_api_subtest() 144 opts.kprobe_multi.addrs = (const unsigned long *) &addrs; in kprobe_multi_link_api_subtest() 145 opts.kprobe_multi.cnt = ARRAY_SIZE(addrs); in kprobe_multi_link_api_subtest() 146 opts.kprobe_multi.cookies = (const __u64 *) &cookies; in kprobe_multi_link_api_subtest() 162 opts.kprobe_multi.flags = BPF_F_KPROBE_MULTI_RETURN; in kprobe_multi_link_api_subtest() 182 struct kprobe_multi *skel = NULL; in kprobe_multi_attach_api_subtest()
|
H A D | module_attach.c | 102 link = bpf_program__attach(skel->progs.kprobe_multi); in test_module_attach()
|
/kernel/linux/linux-6.6/tools/bpf/bpftool/ |
H A D | link.c | 266 info->kprobe_multi.flags & BPF_F_KPROBE_MULTI_RETURN); in show_kprobe_multi_json() 267 jsonw_uint_field(json_wtr, "func_cnt", info->kprobe_multi.count); in show_kprobe_multi_json() 270 addrs = u64_to_ptr(info->kprobe_multi.addrs); in show_kprobe_multi_json() 271 qsort(addrs, info->kprobe_multi.count, sizeof(addrs[0]), cmp_u64); in show_kprobe_multi_json() 290 if (j++ == info->kprobe_multi.count) in show_kprobe_multi_json() 636 if (!info->kprobe_multi.count) in show_kprobe_multi_plain() 639 if (info->kprobe_multi.flags & BPF_F_KPROBE_MULTI_RETURN) in show_kprobe_multi_plain() 643 printf("func_cnt %u ", info->kprobe_multi.count); in show_kprobe_multi_plain() 644 addrs = (__u64 *)u64_to_ptr(info->kprobe_multi.addrs); in show_kprobe_multi_plain() 645 qsort(addrs, info->kprobe_multi in show_kprobe_multi_plain() [all...] |
/kernel/linux/linux-6.6/tools/lib/bpf/ |
H A D | bpf.c | 762 attr.link_create.kprobe_multi.flags = OPTS_GET(opts, kprobe_multi.flags, 0); in bpf_link_create() 763 attr.link_create.kprobe_multi.cnt = OPTS_GET(opts, kprobe_multi.cnt, 0); in bpf_link_create() 764 attr.link_create.kprobe_multi.syms = ptr_to_u64(OPTS_GET(opts, kprobe_multi.syms, 0)); in bpf_link_create() 765 attr.link_create.kprobe_multi.addrs = ptr_to_u64(OPTS_GET(opts, kprobe_multi.addrs, 0)); in bpf_link_create() 766 attr.link_create.kprobe_multi.cookies = ptr_to_u64(OPTS_GET(opts, kprobe_multi in bpf_link_create() [all...] |
H A D | bpf.h | 394 } kprobe_multi; member
|
H A D | libbpf.c | 136 [BPF_LINK_TYPE_KPROBE_MULTI] = "kprobe_multi", 10877 lopts.kprobe_multi.syms = syms; in bpf_program__attach_kprobe_multi_opts() 10878 lopts.kprobe_multi.addrs = addrs; in bpf_program__attach_kprobe_multi_opts() 10879 lopts.kprobe_multi.cookies = cookies; in bpf_program__attach_kprobe_multi_opts() 10880 lopts.kprobe_multi.cnt = cnt; in bpf_program__attach_kprobe_multi_opts() 10881 lopts.kprobe_multi.flags = retprobe ? BPF_F_KPROBE_MULTI_RETURN : 0; in bpf_program__attach_kprobe_multi_opts()
|
/kernel/linux/linux-6.6/tools/testing/selftests/bpf/progs/ |
H A D | test_module_attach.c | 114 int BPF_PROG(kprobe_multi) in BPF_PROG()
|
/kernel/linux/linux-6.6/kernel/trace/ |
H A D | bpf_trace.c | 2609 u64 __user *uaddrs = u64_to_user_ptr(info->kprobe_multi.addrs); in bpf_kprobe_multi_link_fill_link_info() 2611 u32 ucount = info->kprobe_multi.count; in bpf_kprobe_multi_link_fill_link_info() 2618 info->kprobe_multi.count = kmulti_link->cnt; in bpf_kprobe_multi_link_fill_link_info() 2619 info->kprobe_multi.flags = kmulti_link->flags; in bpf_kprobe_multi_link_fill_link_info() 2889 flags = attr->link_create.kprobe_multi.flags; in bpf_kprobe_multi_link_attach() 2893 uaddrs = u64_to_user_ptr(attr->link_create.kprobe_multi.addrs); in bpf_kprobe_multi_link_attach() 2894 usyms = u64_to_user_ptr(attr->link_create.kprobe_multi.syms); in bpf_kprobe_multi_link_attach() 2898 cnt = attr->link_create.kprobe_multi.cnt; in bpf_kprobe_multi_link_attach() 2909 ucookies = u64_to_user_ptr(attr->link_create.kprobe_multi.cookies); in bpf_kprobe_multi_link_attach()
|
/kernel/linux/linux-6.6/include/uapi/linux/ |
H A D | bpf.h | 1188 /* link_create.kprobe_multi.flags used in LINK_CREATE command for 1615 } kprobe_multi; member 6534 __u32 count; /* in/out: kprobe_multi function count */ 6536 } kprobe_multi; member
|
/kernel/linux/linux-6.6/tools/include/uapi/linux/ |
H A D | bpf.h | 1188 /* link_create.kprobe_multi.flags used in LINK_CREATE command for 1615 } kprobe_multi; member 6534 __u32 count; /* in/out: kprobe_multi function count */ 6536 } kprobe_multi; member
|