[PATCH 4/4] selftests/powerpc: Skip TM tests if we don't have TM

Michael Ellerman mpe at ellerman.id.au
Tue Nov 24 13:05:41 AEDT 2015


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 <mpe at 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



More information about the Linuxppc-dev mailing list