mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-12-27 12:21:22 -05:00
selftests/bpf: Fix redefinition of 'off' as different kind of symbol
This fixes the following build error
CLNG-BPF [test_progs] verifier_global_ptr_args.bpf.o
progs/verifier_global_ptr_args.c:228:5: error: redefinition of 'off' as
different kind of symbol
228 | u32 off;
| ^
The symbol 'off' was previously defined in
tools/testing/selftests/bpf/tools/include/vmlinux.h, which includes an
enum i40e_ptp_gpio_pin_state from
drivers/net/ethernet/intel/i40e/i40e_ptp.c:
enum i40e_ptp_gpio_pin_state {
end = -2,
invalid = -1,
off = 0,
in_A = 1,
in_B = 2,
out_A = 3,
out_B = 4,
};
This enum is included when CONFIG_I40E is enabled. As of commit
032676ff82 ("LoongArch: Update Loongson-3 default config file"),
CONFIG_I40E is set in the defconfig, which leads to the conflict.
Renaming the local variable avoids the redefinition and allows the
build to succeed.
Suggested-by: Yonghong Song <yonghong.song@linux.dev>
Signed-off-by: Brahmajit Das <listout@listout.xyz>
Acked-by: Yonghong Song <yonghong.song@linux.dev>
Link: https://lore.kernel.org/r/20251017171551.53142-1-listout@listout.xyz
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
committed by
Alexei Starovoitov
parent
7c33e97a6e
commit
a1e83d4c03
@@ -225,7 +225,7 @@ int trusted_to_untrusted(void *ctx)
|
||||
}
|
||||
|
||||
char mem[16];
|
||||
u32 off;
|
||||
u32 offset;
|
||||
|
||||
SEC("tp_btf/sys_enter")
|
||||
__success
|
||||
@@ -240,9 +240,9 @@ int anything_to_untrusted(void *ctx)
|
||||
/* scalar to untrusted */
|
||||
subprog_untrusted(0);
|
||||
/* variable offset to untrusted (map) */
|
||||
subprog_untrusted((void *)mem + off);
|
||||
subprog_untrusted((void *)mem + offset);
|
||||
/* variable offset to untrusted (trusted) */
|
||||
subprog_untrusted((void *)bpf_get_current_task_btf() + off);
|
||||
subprog_untrusted((void *)bpf_get_current_task_btf() + offset);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -298,12 +298,12 @@ int anything_to_untrusted_mem(void *ctx)
|
||||
/* scalar to untrusted mem */
|
||||
subprog_void_untrusted(0);
|
||||
/* variable offset to untrusted mem (map) */
|
||||
subprog_void_untrusted((void *)mem + off);
|
||||
subprog_void_untrusted((void *)mem + offset);
|
||||
/* variable offset to untrusted mem (trusted) */
|
||||
subprog_void_untrusted(bpf_get_current_task_btf() + off);
|
||||
subprog_void_untrusted(bpf_get_current_task_btf() + offset);
|
||||
/* variable offset to untrusted char/enum (map) */
|
||||
subprog_char_untrusted(mem + off);
|
||||
subprog_enum_untrusted((void *)mem + off);
|
||||
subprog_char_untrusted(mem + offset);
|
||||
subprog_enum_untrusted((void *)mem + offset);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user