selftests/bpf: Fix conflicts with built-in functions in bench_local_storage_create
The fork function in gcc is considered a built in function due to
being used by libgcov when building with gnu extensions.
Rename fork to sched_process_fork to prevent this conflict.
See details:
https://github.com/gcc-mirror/gcc/commit/d1c38823924506d389ca58d02926ace21bdf82fa
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82457
Fixes the following error:
In file included from progs/bench_local_storage_create.c:6:
progs/bench_local_storage_create.c:43:14: error: conflicting types for
built-in function 'fork'; expected 'int(void)'
[-Werror=builtin-declaration-mismatch]
43 | int BPF_PROG(fork, struct task_struct *parent, struct
task_struct *child)
| ^~~~
Fixes: cbe9d93d58 ("selftests/bpf: Add bench for task storage creation")
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20230331075848.1642814-1-james.hilliard1@gmail.com
This commit is contained in:
committed by
Andrii Nakryiko
parent
e941933c49
commit
9af0f555ae
@@ -95,7 +95,7 @@ static void setup(void)
|
||||
exit(1);
|
||||
}
|
||||
} else {
|
||||
if (!bpf_program__attach(skel->progs.fork)) {
|
||||
if (!bpf_program__attach(skel->progs.sched_process_fork)) {
|
||||
fprintf(stderr, "Error attaching bpf program\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ int BPF_PROG(kmalloc, unsigned long call_site, const void *ptr,
|
||||
}
|
||||
|
||||
SEC("tp_btf/sched_process_fork")
|
||||
int BPF_PROG(fork, struct task_struct *parent, struct task_struct *child)
|
||||
int BPF_PROG(sched_process_fork, struct task_struct *parent, struct task_struct *child)
|
||||
{
|
||||
struct storage *stg;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user