]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
selftests/bpf: Enable stack argument tests for arm64
authorPuranjay Mohan <puranjay@kernel.org>
Wed, 13 May 2026 04:52:04 +0000 (21:52 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Wed, 13 May 2026 16:27:32 +0000 (09:27 -0700)
Now that arm64 supports stack arguments, enable the existing stack_arg,
stack_arg_kfunc and verifier_stack_arg tests for __TARGET_ARCH_arm64.

Signed-off-by: Puranjay Mohan <puranjay@kernel.org>
Signed-off-by: Yonghong Song <yonghong.song@linux.dev>
Link: https://lore.kernel.org/r/20260513045204.2403441-1-yonghong.song@linux.dev
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/progs/btf__stack_arg_precision.c
tools/testing/selftests/bpf/progs/btf__verifier_stack_arg_order.c
tools/testing/selftests/bpf/progs/stack_arg.c
tools/testing/selftests/bpf/progs/stack_arg_kfunc.c
tools/testing/selftests/bpf/progs/stack_arg_precision.c
tools/testing/selftests/bpf/progs/verifier_stack_arg.c
tools/testing/selftests/bpf/progs/verifier_stack_arg_order.c

index 296fddfe6804b75ec729c32123a95cb968ca917d..8d38aafe66a283eaccfb1248ee31d7b874993170 100644 (file)
@@ -4,7 +4,8 @@
 #include <bpf/bpf_helpers.h>
 #include "../test_kmods/bpf_testmod_kfunc.h"
 
-#if defined(__TARGET_ARCH_x86) && defined(__BPF_FEATURE_STACK_ARGUMENT)
+#if (defined(__TARGET_ARCH_x86) || defined(__TARGET_ARCH_arm64)) && \
+       defined(__BPF_FEATURE_STACK_ARGUMENT)
 
 long subprog_call_mem_kfunc(long a, long b, long c, long d, long e, long size)
 {
index 83692570d5bcfbb40100be2eb06eeea610d2449d..da34e8456b6c85d4771fb6868828dea7fae544dc 100644 (file)
@@ -3,7 +3,8 @@
 #include <vmlinux.h>
 #include <bpf/bpf_helpers.h>
 
-#if defined(__TARGET_ARCH_x86) && defined(__BPF_FEATURE_STACK_ARGUMENT)
+#if (defined(__TARGET_ARCH_x86) || defined(__TARGET_ARCH_arm64)) && \
+       defined(__BPF_FEATURE_STACK_ARGUMENT)
 
 int subprog_bad_order_6args(int a, int b, int c, int d, int e, int f)
 {
index ab6240b997c596a330101544c1ecdf7dd9e43792..b5e9929a4d638e6e4df3add28c2db1855dfba8d0 100644 (file)
@@ -21,7 +21,8 @@ struct {
 
 int timer_result;
 
-#if defined(__TARGET_ARCH_x86) && defined(__BPF_FEATURE_STACK_ARGUMENT)
+#if (defined(__TARGET_ARCH_x86) || defined(__TARGET_ARCH_arm64)) && \
+       defined(__BPF_FEATURE_STACK_ARGUMENT)
 
 const volatile bool has_stack_arg = true;
 
index fa9def876ea5e9fd9e831594af174e1624ecec9d..da0d4f91d273f7e2a87c1b7b84979634f84648b0 100644 (file)
@@ -6,7 +6,8 @@
 #include "bpf_kfuncs.h"
 #include "../test_kmods/bpf_testmod_kfunc.h"
 
-#if defined(__TARGET_ARCH_x86) && defined(__BPF_FEATURE_STACK_ARGUMENT)
+#if (defined(__TARGET_ARCH_x86) || defined(__TARGET_ARCH_arm64)) && \
+       defined(__BPF_FEATURE_STACK_ARGUMENT)
 
 const volatile bool has_stack_arg = true;
 
index 2a0a344c83caa296f2240822e6ac026534e58ed6..bee2eeec021d71756f3e3cb108683f73966ebac2 100644 (file)
@@ -6,7 +6,8 @@
 #include "../test_kmods/bpf_testmod_kfunc.h"
 #include "bpf_misc.h"
 
-#if defined(__TARGET_ARCH_x86) && defined(__BPF_FEATURE_STACK_ARGUMENT)
+#if (defined(__TARGET_ARCH_x86) || defined(__TARGET_ARCH_arm64)) && \
+       defined(__BPF_FEATURE_STACK_ARGUMENT)
 
 /* Force kfunc extern BTF generation for inline asm call below.
  * Uses its own SEC so it's not included as a .text subprog.
index 6587bf912bc038cc2cac177c6d45218fa74cea94..d43a9b42034cfd0449d48fb77728aaa85b630dff 100644 (file)
@@ -12,7 +12,8 @@ struct {
        __type(value, long long);
 } map_hash_8b SEC(".maps");
 
-#if defined(__TARGET_ARCH_x86) && defined(__BPF_FEATURE_STACK_ARGUMENT)
+#if (defined(__TARGET_ARCH_x86) || defined(__TARGET_ARCH_arm64)) && \
+       defined(__BPF_FEATURE_STACK_ARGUMENT)
 
 __noinline __used
 static int subprog_6args(int a, int b, int c, int d, int e, int f)
index 938f4a2f54828b376e8a373227da8d1ff10b4101..1240cf8a40d6526c4ec9debd1976689efda57e8d 100644 (file)
@@ -5,7 +5,8 @@
 #include <bpf/bpf_helpers.h>
 #include "bpf_misc.h"
 
-#if defined(__TARGET_ARCH_x86) && defined(__BPF_FEATURE_STACK_ARGUMENT)
+#if (defined(__TARGET_ARCH_x86) || defined(__TARGET_ARCH_arm64)) && \
+       defined(__BPF_FEATURE_STACK_ARGUMENT)
 
 __noinline __used __naked
 static int subprog_bad_order_6args(int a, int b, int c, int d, int e, int f)