selftests/bpf: Add tracing multi verifier fails test

Adding tests for verifier fails on tracing multi programs.

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Link: https://lore.kernel.org/r/20260606123955.345967-28-jolsa@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
Jiri Olsa 2026-06-06 14:39:52 +02:00 committed by Alexei Starovoitov
parent 1fd8328549
commit 443c91d08c
2 changed files with 33 additions and 0 deletions

View File

@ -9,6 +9,7 @@
#include "tracing_multi_intersect.skel.h"
#include "tracing_multi_session.skel.h"
#include "tracing_multi_fail.skel.h"
#include "tracing_multi_verifier.skel.h"
#include "trace_helpers.h"
static __u64 bpf_fentry_test_cookies[] = {
@ -619,4 +620,5 @@ void test_tracing_multi_test(void)
test_session();
if (test__start_subtest("attach_api_fails"))
test_attach_api_fails();
RUN_TESTS(tracing_multi_verifier);
}

View File

@ -0,0 +1,31 @@
// SPDX-License-Identifier: GPL-2.0
#include "vmlinux.h"
#include <bpf/bpf_helpers.h>
#include <bpf/bpf_tracing.h>
#include "bpf_misc.h"
char _license[] SEC("license") = "GPL";
SEC("fentry.multi/bpf_fentry_test1")
__failure
__msg("func 'bpf_multi_func' doesn't have 1-th argument")
int BPF_PROG(fentry_direct_access, int a)
{
return a;
}
SEC("fexit.multi/bpf_fentry_test3")
__failure
__msg("invalid bpf_context access off=24 size=8")
int BPF_PROG(fexit_direct_access, char a, int b, __u64 c, int ret)
{
return ret;
}
SEC("fsession.multi/bpf_fentry_test4")
__failure
__msg("invalid bpf_context access off=16 size=8")
int BPF_PROG(fsession_direct_access, void *a, char b, int c, __u64 d, int ret)
{
return c;
}