mirror of
https://github.com/torvalds/linux.git
synced 2026-05-23 14:42:08 +02:00
selftests/bpf: Add a test for kprobe multi with unique_match
Add a kprobe multi subtest to test kprobe multi unique_match option. Signed-off-by: Yonghong Song <yonghong.song@linux.dev> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Link: https://lore.kernel.org/bpf/20250109174028.3368967-1-yonghong.song@linux.dev
This commit is contained in:
parent
e2b0bda62d
commit
a43796b520
|
|
@ -397,6 +397,31 @@ static void test_session_cookie_skel_api(void)
|
|||
kprobe_multi_session_cookie__destroy(skel);
|
||||
}
|
||||
|
||||
static void test_unique_match(void)
|
||||
{
|
||||
LIBBPF_OPTS(bpf_kprobe_multi_opts, opts);
|
||||
struct kprobe_multi *skel = NULL;
|
||||
struct bpf_link *link = NULL;
|
||||
|
||||
skel = kprobe_multi__open_and_load();
|
||||
if (!ASSERT_OK_PTR(skel, "kprobe_multi__open_and_load"))
|
||||
return;
|
||||
|
||||
opts.unique_match = true;
|
||||
skel->bss->pid = getpid();
|
||||
link = bpf_program__attach_kprobe_multi_opts(skel->progs.test_kprobe_manual,
|
||||
"bpf_fentry_test*", &opts);
|
||||
if (!ASSERT_ERR_PTR(link, "bpf_program__attach_kprobe_multi_opts"))
|
||||
bpf_link__destroy(link);
|
||||
|
||||
link = bpf_program__attach_kprobe_multi_opts(skel->progs.test_kprobe_manual,
|
||||
"bpf_fentry_test8*", &opts);
|
||||
if (ASSERT_OK_PTR(link, "bpf_program__attach_kprobe_multi_opts"))
|
||||
bpf_link__destroy(link);
|
||||
|
||||
kprobe_multi__destroy(skel);
|
||||
}
|
||||
|
||||
static size_t symbol_hash(long key, void *ctx __maybe_unused)
|
||||
{
|
||||
return str_hash((const char *) key);
|
||||
|
|
@ -765,5 +790,7 @@ void test_kprobe_multi_test(void)
|
|||
test_session_skel_api();
|
||||
if (test__start_subtest("session_cookie"))
|
||||
test_session_cookie_skel_api();
|
||||
if (test__start_subtest("unique_match"))
|
||||
test_unique_match();
|
||||
RUN_TESTS(kprobe_multi_verifier);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user