selftests/powerpc: Run per_event_excludes test on Power8 or later
authorMichael Ellerman <mpe@ellerman.id.au>
Thu, 16 Jul 2020 12:21:42 +0000 (22:21 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 21 Jul 2020 14:01:23 +0000 (00:01 +1000)
The per_event_excludes test wants to run on Power8 or later. But
currently it checks that AT_BASE_PLATFORM *equals* power8, which means
it only runs on Power8.

Fix it to check for the ISA 2.07 feature, which will be set on Power8
and later CPUs.

Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20200716122142.3776261-1-mpe@ellerman.id.au
tools/testing/selftests/powerpc/pmu/per_event_excludes.c

index 2756fe2..2d37942 100644 (file)
@@ -12,6 +12,8 @@
 #include <string.h>
 #include <sys/prctl.h>
 
+#include <asm/cputable.h>
+
 #include "event.h"
 #include "lib.h"
 #include "utils.h"
 static int per_event_excludes(void)
 {
        struct event *e, events[4];
-       char *platform;
        int i;
 
-       platform = (char *)get_auxv_entry(AT_BASE_PLATFORM);
-       FAIL_IF(!platform);
-       SKIP_IF(strcmp(platform, "power8") != 0);
+       SKIP_IF(!have_hwcap2(PPC_FEATURE2_ARCH_2_07));
 
        /*
         * We need to create the events disabled, otherwise the running/enabled