Index: src/tests/concurrent/coroutineYield.c
===================================================================
--- src/tests/concurrent/coroutineYield.c	(revision 8638cef5fe8d544c121589148f7aae119e60973d)
+++ src/tests/concurrent/coroutineYield.c	(revision 934d2006d8199ffd68cfdd4b51cc5153f436d6a9)
@@ -4,4 +4,6 @@
 #include <thread>
 #include <time>
+
+#include "long_tests.h"
 
 #ifndef PREEMPTION_RATE
@@ -13,5 +15,5 @@
 }
 
-#ifdef LONG_TEST
+#ifdef TEST_LONG
 static const unsigned long N = 600_000ul;
 #else
@@ -33,9 +35,10 @@
 int main(int argc, char* argv[]) {
 	Coroutine c;
-	for(int i = 0; i < N; i++) {
+	for(int i = 0; TEST(i < N); i++) {
 		sout | "Thread 1" | endl;
 		resume(c);
 		sout | "Thread 2" | endl;
 		yield();
+		KICK_WATCHDOG;
 	}
 }
Index: src/tests/concurrent/preempt.c
===================================================================
--- src/tests/concurrent/preempt.c	(revision 8638cef5fe8d544c121589148f7aae119e60973d)
+++ src/tests/concurrent/preempt.c	(revision 934d2006d8199ffd68cfdd4b51cc5153f436d6a9)
@@ -2,4 +2,6 @@
 #include <thread>
 #include <time>
+
+#include "long_tests.h"
 
 #ifndef PREEMPTION_RATE
@@ -11,5 +13,5 @@
 }
 
-#ifdef LONG_TEST
+#ifdef TEST_LONG
 static const unsigned long N = 30_000ul;
 #else
@@ -30,5 +32,5 @@
 
 void main(worker_t & this) {
-	while(counter < N) {
+	while(TEST(counter < N)) {
 		__cfaabi_check_preemption();
 		if( (counter % 7) == this.value ) {
@@ -40,4 +42,5 @@
 		}
 		__cfaabi_check_preemption();
+		KICK_WATCHDOG;
 	}
 }
Index: src/tests/concurrent/signal/block.c
===================================================================
--- src/tests/concurrent/signal/block.c	(revision 8638cef5fe8d544c121589148f7aae119e60973d)
+++ src/tests/concurrent/signal/block.c	(revision 934d2006d8199ffd68cfdd4b51cc5153f436d6a9)
@@ -14,4 +14,6 @@
 #include <time>
 
+#include "long_tests.h"
+
 #ifndef PREEMPTION_RATE
 #define PREEMPTION_RATE 10`ms
@@ -22,5 +24,5 @@
 }
 
-#ifdef LONG_TEST
+#ifdef TEST_LONG
 static const unsigned long N = 150_000ul;
 #else
@@ -66,6 +68,7 @@
 thread Waiter {};
 void main( Waiter & this ) {
-	for( int i = 0; i < N; i++ ) {
+	for( int i = 0; TEST(i < N); i++ ) {
 		wait_op( globalA, globalB, i );
+		KICK_WATCHDOG;
 	}
 }
Index: src/tests/concurrent/signal/disjoint.c
===================================================================
--- src/tests/concurrent/signal/disjoint.c	(revision 8638cef5fe8d544c121589148f7aae119e60973d)
+++ src/tests/concurrent/signal/disjoint.c	(revision 934d2006d8199ffd68cfdd4b51cc5153f436d6a9)
@@ -4,4 +4,6 @@
 #include <thread>
 #include <time>
+
+#include "long_tests.h"
 
 #ifndef PREEMPTION_RATE
@@ -13,5 +15,5 @@
 }
 
-#ifdef LONG_TEST
+#ifdef TEST_LONG
 static const unsigned long N = 300_000ul;
 #else
@@ -71,5 +73,5 @@
 	if( (d.counter % 1000) == 0 ) sout | d.counter | endl;
 
-	return d.counter < N;
+	return TEST(d.counter < N);
 }
 
@@ -77,5 +79,5 @@
 
 void main( Waiter & this ) {
-	while( wait( mut, data ) ) { yield(); }
+	while( wait( mut, data ) ) { KICK_WATCHDOG; yield(); }
 }
 
@@ -94,5 +96,5 @@
 
 	//This is technically a mutual exclusion violation but the mutex monitor protects us
-	bool running = data.counter < N && data.counter > 0;
+	bool running = TEST(data.counter < N) && data.counter > 0;
 	if( data.state != SIGNAL && running ) {
 		sout | "ERROR Eager signal" | data.state | endl;
Index: src/tests/concurrent/signal/wait.c
===================================================================
--- src/tests/concurrent/signal/wait.c	(revision 8638cef5fe8d544c121589148f7aae119e60973d)
+++ src/tests/concurrent/signal/wait.c	(revision 934d2006d8199ffd68cfdd4b51cc5153f436d6a9)
@@ -12,4 +12,6 @@
 #include <time>
 
+#include "long_tests.h"
+
 #ifndef PREEMPTION_RATE
 #define PREEMPTION_RATE 10`ms
@@ -20,5 +22,5 @@
 }
 
-#ifdef LONG_TEST
+#ifdef TEST_LONG
 static const unsigned long N = 375_000ul;
 #else
@@ -90,6 +92,7 @@
 // Waiter ABC
 void main( WaiterABC & this ) {
-	for( int i = 0; i < N; i++ ) {
+	for( int i = 0; TEST(i < N); i++ ) {
 		wait( condABC, globalA, globalB, globalC );
+		KICK_WATCHDOG;
 	}
 
@@ -100,6 +103,7 @@
 // Waiter AB
 void main( WaiterAB & this ) {
-	for( int i = 0; i < N; i++ ) {
+	for( int i = 0; TEST(i < N); i++ ) {
 		wait( condAB , globalA, globalB );
+		KICK_WATCHDOG;
 	}
 
@@ -110,6 +114,7 @@
 // Waiter AC
 void main( WaiterAC & this ) {
-	for( int i = 0; i < N; i++ ) {
+	for( int i = 0; TEST(i < N); i++ ) {
 		wait( condAC , globalA, globalC );
+		KICK_WATCHDOG;
 	}
 
@@ -120,6 +125,7 @@
 // Waiter BC
 void main( WaiterBC & this ) {
-	for( int i = 0; i < N; i++ ) {
+	for( int i = 0; TEST(i < N); i++ ) {
 		wait( condBC , globalB, globalC );
+		KICK_WATCHDOG;
 	}
 
