1*2922dd58SJiri Olsa // SPDX-License-Identifier: GPL-2.0 2*2922dd58SJiri Olsa #include <vmlinux.h> 3*2922dd58SJiri Olsa #include <bpf/bpf_helpers.h> 4*2922dd58SJiri Olsa #include <bpf/bpf_tracing.h> 5*2922dd58SJiri Olsa 6*2922dd58SJiri Olsa char _license[] SEC("license") = "GPL"; 7*2922dd58SJiri Olsa 8*2922dd58SJiri Olsa __hidden extern int tracing_multi_arg_check(__u64 *ctx, __u64 *test_result, bool is_return); 9*2922dd58SJiri Olsa 10*2922dd58SJiri Olsa __u64 test_result_fentry = 0; 11*2922dd58SJiri Olsa __u64 test_result_fexit = 0; 12*2922dd58SJiri Olsa 13*2922dd58SJiri Olsa SEC("fentry.multi/bpf_fentry_test*") 14*2922dd58SJiri Olsa int BPF_PROG(test_fentry) 15*2922dd58SJiri Olsa { 16*2922dd58SJiri Olsa tracing_multi_arg_check(ctx, &test_result_fentry, false); 17*2922dd58SJiri Olsa return 0; 18*2922dd58SJiri Olsa } 19*2922dd58SJiri Olsa 20*2922dd58SJiri Olsa SEC("fexit.multi/bpf_fentry_test*") 21*2922dd58SJiri Olsa int BPF_PROG(test_fexit) 22*2922dd58SJiri Olsa { 23*2922dd58SJiri Olsa tracing_multi_arg_check(ctx, &test_result_fexit, true); 24*2922dd58SJiri Olsa return 0; 25*2922dd58SJiri Olsa } 26*2922dd58SJiri Olsa 27*2922dd58SJiri Olsa SEC("fentry.multi.s/bpf_fentry_test1") 28*2922dd58SJiri Olsa int BPF_PROG(test_fentry_s) 29*2922dd58SJiri Olsa { 30*2922dd58SJiri Olsa tracing_multi_arg_check(ctx, &test_result_fentry, false); 31*2922dd58SJiri Olsa return 0; 32*2922dd58SJiri Olsa } 33*2922dd58SJiri Olsa 34*2922dd58SJiri Olsa SEC("fexit.multi.s/bpf_fentry_test1") 35*2922dd58SJiri Olsa int BPF_PROG(test_fexit_s) 36*2922dd58SJiri Olsa { 37*2922dd58SJiri Olsa tracing_multi_arg_check(ctx, &test_result_fexit, true); 38*2922dd58SJiri Olsa return 0; 39*2922dd58SJiri Olsa } 40