1to1 selective wakeup: add misorder injection test
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Sat, 27 Aug 2011 16:32:36 +0000 (12:32 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Sat, 27 Aug 2011 16:32:36 +0000 (12:32 -0400)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
futex-wakeup/nto1-selective/Makefile
futex-wakeup/nto1-selective/futex.spin
futex-wakeup/nto1-selective/futex_progress_misorder.define [new file with mode: 0644]

index 11d98e814dc70c19c6aba5384271e7f116d8ab74..2c7f84e0661b643d67db766e032204ea5bfb8a1f 100644 (file)
@@ -29,6 +29,7 @@ default:
        make futex_progress | tee futex_progress.log
        make futex_progress_no_wake | tee futex_progress_no_wake.log
        make futex_progress_late_dec | tee futex_progress_late_dec.log
+       make futex_progress_misorder | tee futex_progress_misorder.log
        make asserts | tee asserts.log
        make summary
 
@@ -68,6 +69,13 @@ futex_progress_late_dec: clean futex_ltl futex_progress_late_dec_define run_weak
 futex_progress_late_dec_define:
        cp futex_progress_late_dec.define .input.define
 
+futex_progress_misorder: clean futex_ltl futex_progress_misorder_define run_weak_fair
+       cp .input.spin $@.spin.input
+       -cp .input.spin.trail $@.spin.input.trail
+
+futex_progress_misorder_define:
+       cp futex_progress_misorder.define .input.define
+
 futex_ltl:
        touch .input.define
        cat DEFINES > pan.ltl
index 6f854fceefba73dfbc3781d04734b75590175159..558ace123bd493bc5cb5b77d7eb55cced2450531 100644 (file)
@@ -126,8 +126,13 @@ active proctype waiter()
        do
        :: 1 ->
 #ifndef INJ_LATE_DEC
+#ifndef INJ_MISORDER
                futex = -1;
                waiting[0] = 1;
+#else
+               waiting[0] = 1;
+               futex = -1;
+#endif
                waiting[1] = 1;
 #endif
 
diff --git a/futex-wakeup/nto1-selective/futex_progress_misorder.define b/futex-wakeup/nto1-selective/futex_progress_misorder.define
new file mode 100644 (file)
index 0000000..0d42b57
--- /dev/null
@@ -0,0 +1 @@
+#define INJ_MISORDER
This page took 0.02636 seconds and 4 git commands to generate.