Skip to content

Commit fee356e

Browse files
olsajiriAlexei Starovoitov
authored andcommitted
selftests/bpf: Add bpf_testmod_fentry_* functions
Adding 3 bpf_testmod_fentry_* functions to have a way to test kprobe multi link on kernel module. They follow bpf_fentry_test* functions prototypes/code. Adding equivalent functions to all bpf_fentry_test* does not seems necessary at the moment, could be added later. Acked-by: Song Liu <song@kernel.org> Signed-off-by: Jiri Olsa <jolsa@kernel.org> Link: https://lore.kernel.org/r/20221025134148.3300700-7-jolsa@kernel.org Signed-off-by: Alexei Starovoitov <ast@kernel.org>
1 parent 10705b2 commit fee356e

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

tools/testing/selftests/bpf/bpf_testmod/bpf_testmod.c

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,23 @@ __weak noinline struct file *bpf_testmod_return_ptr(int arg)
128128
}
129129
}
130130

131+
noinline int bpf_testmod_fentry_test1(int a)
132+
{
133+
return a + 1;
134+
}
135+
136+
noinline int bpf_testmod_fentry_test2(int a, u64 b)
137+
{
138+
return a + b;
139+
}
140+
141+
noinline int bpf_testmod_fentry_test3(char a, int b, u64 c)
142+
{
143+
return a + b + c;
144+
}
145+
146+
int bpf_testmod_fentry_ok;
147+
131148
noinline ssize_t
132149
bpf_testmod_test_read(struct file *file, struct kobject *kobj,
133150
struct bin_attribute *bin_attr,
@@ -167,6 +184,13 @@ bpf_testmod_test_read(struct file *file, struct kobject *kobj,
167184
return snprintf(buf, len, "%d\n", writable.val);
168185
}
169186

187+
if (bpf_testmod_fentry_test1(1) != 2 ||
188+
bpf_testmod_fentry_test2(2, 3) != 5 ||
189+
bpf_testmod_fentry_test3(4, 5, 6) != 15)
190+
goto out;
191+
192+
bpf_testmod_fentry_ok = 1;
193+
out:
170194
return -EIO; /* always fail */
171195
}
172196
EXPORT_SYMBOL(bpf_testmod_test_read);

0 commit comments

Comments
 (0)