From: Abhishek Dubey <[email protected]>

This patch enables arch specifier "__powerpc64" in verifier
selftest for ppc64. Power 32-bit would require separate
handling. Changes tested for ppc64 only.

Signed-off-by: Abhishek Dubey <[email protected]>
---
 tools/testing/selftests/bpf/progs/bpf_misc.h | 1 +
 tools/testing/selftests/bpf/test_loader.c    | 5 +++++
 2 files changed, 6 insertions(+)

diff --git a/tools/testing/selftests/bpf/progs/bpf_misc.h 
b/tools/testing/selftests/bpf/progs/bpf_misc.h
index c9bfbe1bafc1..dee284c3ddba 100644
--- a/tools/testing/selftests/bpf/progs/bpf_misc.h
+++ b/tools/testing/selftests/bpf/progs/bpf_misc.h
@@ -155,6 +155,7 @@
 #define __arch_arm64           __arch("ARM64")
 #define __arch_riscv64         __arch("RISCV64")
 #define __arch_s390x           __arch("s390x")
+#define __arch_powerpc64       __arch("POWERPC64")
 #define __caps_unpriv(caps)    
__attribute__((btf_decl_tag("comment:test_caps_unpriv=" EXPAND_QUOTE(caps))))
 #define __load_if_JITed()      
__attribute__((btf_decl_tag("comment:load_mode=jited")))
 #define __load_if_no_JITed()   
__attribute__((btf_decl_tag("comment:load_mode=no_jited")))
diff --git a/tools/testing/selftests/bpf/test_loader.c 
b/tools/testing/selftests/bpf/test_loader.c
index 338c035c3688..fc8b95316379 100644
--- a/tools/testing/selftests/bpf/test_loader.c
+++ b/tools/testing/selftests/bpf/test_loader.c
@@ -378,6 +378,7 @@ enum arch {
        ARCH_ARM64      = 0x4,
        ARCH_RISCV64    = 0x8,
        ARCH_S390X      = 0x10,
+       ARCH_POWERPC64  = 0x20,
 };
 
 static int get_current_arch(void)
@@ -390,6 +391,8 @@ static int get_current_arch(void)
        return ARCH_RISCV64;
 #elif defined(__s390x__)
        return ARCH_S390X;
+#elif defined(__powerpc64__)
+       return ARCH_POWERPC64;
 #endif
        return ARCH_UNKNOWN;
 }
@@ -587,6 +590,8 @@ static int parse_test_spec(struct test_loader *tester,
                                arch = ARCH_RISCV64;
                        } else if (strcmp(val, "s390x") == 0) {
                                arch = ARCH_S390X;
+                       } else if (strcmp(val, "POWERPC64") == 0) {
+                               arch = ARCH_POWERPC64;
                        } else {
                                PRINT_FAIL("bad arch spec: '%s'\n", val);
                                err = -EINVAL;
-- 
2.52.0


Reply via email to