Make the newly added TM tests skip if we don't have TM available, either because we're running on old hardware, or the kernel doesn't have TM support enabled.
Signed-off-by: Michael Ellerman <m...@ellerman.id.au> --- tools/testing/selftests/powerpc/tm/Makefile | 8 +++++--- tools/testing/selftests/powerpc/tm/tm-signal-msr-resv.c | 3 +++ tools/testing/selftests/powerpc/tm/tm-signal-stack.c | 3 +++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/powerpc/tm/Makefile b/tools/testing/selftests/powerpc/tm/Makefile index 3e6e7aaa5312..578572a3700a 100644 --- a/tools/testing/selftests/powerpc/tm/Makefile +++ b/tools/testing/selftests/powerpc/tm/Makefile @@ -2,10 +2,12 @@ TEST_PROGS := tm-resched-dscr tm-syscall tm-signal-msr-resv tm-signal-stack all: $(TEST_PROGS) -$(TEST_PROGS): ../harness.c +$(TEST_PROGS): ../harness.c ../utils.c -tm-syscall: tm-syscall-asm.S ../utils.c -tm-syscall: CFLAGS += -mhtm -I../../../../../usr/include +CFLAGS += -I../../../../../usr/include + +tm-syscall: tm-syscall-asm.S +tm-syscall: CFLAGS += -mhtm include ../../lib.mk diff --git a/tools/testing/selftests/powerpc/tm/tm-signal-msr-resv.c b/tools/testing/selftests/powerpc/tm/tm-signal-msr-resv.c index bdad34803c06..a6589582b780 100644 --- a/tools/testing/selftests/powerpc/tm/tm-signal-msr-resv.c +++ b/tools/testing/selftests/powerpc/tm/tm-signal-msr-resv.c @@ -18,6 +18,7 @@ #include <signal.h> #include <unistd.h> +#include "tm.h" #include "utils.h" int segv_expected = 0; @@ -49,6 +50,8 @@ int tm_signal_msr_resv() { struct sigaction act; + SKIP_IF(!have_htm()); + act.sa_sigaction = signal_usr1; sigemptyset(&act.sa_mask); act.sa_flags = SA_SIGINFO; diff --git a/tools/testing/selftests/powerpc/tm/tm-signal-stack.c b/tools/testing/selftests/powerpc/tm/tm-signal-stack.c index 62f2a5f108c6..82c29cb222dc 100644 --- a/tools/testing/selftests/powerpc/tm/tm-signal-stack.c +++ b/tools/testing/selftests/powerpc/tm/tm-signal-stack.c @@ -21,6 +21,7 @@ #include <stdio.h> #include <signal.h> +#include "tm.h" #include "utils.h" void signal_segv(int signum) @@ -33,6 +34,8 @@ int tm_signal_stack() { int pid; + SKIP_IF(!have_htm()); + pid = fork(); if (pid < 0) exit(1); -- 2.5.0 _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev