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 64-bit 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 dcd78a3a9052..8e8a732b4481 100644
--- a/tools/testing/selftests/bpf/progs/bpf_misc.h
+++ b/tools/testing/selftests/bpf/progs/bpf_misc.h
@@ -157,6 +157,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)    __test_tag("test_caps_unpriv=" 
EXPAND_QUOTE(caps))
 #define __load_if_JITed()      __test_tag("load_mode=jited")
 #define __load_if_no_JITed()   __test_tag("load_mode=no_jited")
diff --git a/tools/testing/selftests/bpf/test_loader.c 
b/tools/testing/selftests/bpf/test_loader.c
index c4c34cae6102..9b0736831484 100644
--- a/tools/testing/selftests/bpf/test_loader.c
+++ b/tools/testing/selftests/bpf/test_loader.c
@@ -376,6 +376,7 @@ enum arch {
        ARCH_ARM64      = 0x4,
        ARCH_RISCV64    = 0x8,
        ARCH_S390X      = 0x10,
+       ARCH_POWERPC64  = 0x20,
 };
 
 static int get_current_arch(void)
@@ -388,6 +389,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;
 }
@@ -579,6 +582,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