1// SPDX-License-Identifier: GPL-2.0
2/* Copyright (c) 2023 Tencent */
3#include <linux/bpf.h>
4#include <bpf/bpf_helpers.h>
5#include <bpf/bpf_tracing.h>
6
7char _license[] SEC("license") = "GPL";
8
9__u64 test1_result = 0;
10SEC("fexit/bpf_testmod_fentry_test7")
11int BPF_PROG(test1, __u64 a, void *b, short c, int d, void *e, char f,
12 int g, int ret)
13{
14 test1_result = a == 16 && b == (void *)17 && c == 18 && d == 19 &&
15 e == (void *)20 && f == 21 && g == 22 && ret == 133;
16 return 0;
17}
18
19__u64 test2_result = 0;
20SEC("fexit/bpf_testmod_fentry_test11")
21int BPF_PROG(test2, __u64 a, void *b, short c, int d, void *e, char f,
22 int g, unsigned int h, long i, __u64 j, unsigned long k,
23 int ret)
24{
25 test2_result = a == 16 && b == (void *)17 && c == 18 && d == 19 &&
26 e == (void *)20 && f == 21 && g == 22 && h == 23 &&
27 i == 24 && j == 25 && k == 26 && ret == 231;
28 return 0;
29}
30
31__u64 test3_result = 0;
32SEC("fexit/bpf_testmod_fentry_test11")
33int BPF_PROG(test3, __u64 a, __u64 b, __u64 c, __u64 d, __u64 e, __u64 f,
34 __u64 g, __u64 h, __u64 i, __u64 j, __u64 k, __u64 ret)
35{
36 test3_result = a == 16 && b == 17 && c == 18 && d == 19 &&
37 e == 20 && f == 21 && g == 22 && h == 23 &&
38 i == 24 && j == 25 && k == 26 && ret == 231;
39 return 0;
40}
41

source code of linux/tools/testing/selftests/bpf/progs/fexit_many_args.c