[lttng-dev] [PATCH urcu] Tests: Replace prove by autotools tap runner
Michael Jeanson
mjeanson at efficios.com
Fri Dec 8 16:00:17 UTC 2017
This patch removes the dependency on the prove perl script
to run the TAP test suite. It replaces it with the autotools
shell TAP driver that only requires a shell and awk.
Custom arguments can be passed to the test runner with
env variables as follow:
env LOG_DRIVER_FLAGS='--comments --ignore-exit' \
TESTS='foo.test baz.test' make -e check
This tap driver also creates a log file for each test that
can then be used by another system to build a test report.
Signed-off-by: Michael Jeanson <mjeanson at efficios.com>
---
.gitignore | 10 +-
Makefile.am | 4 +-
configure.ac | 66 ++++++++++++-
tests/Makefile.am | 10 +-
tests/benchmark/Makefile.am | 32 +++++--
tests/benchmark/hashtable_1_seconds.tap | 1 +
tests/benchmark/hashtable_30_seconds.tap | 1 +
tests/benchmark/hashtable_3_seconds.tap | 1 +
tests/benchmark/long_bench_tests | 2 -
tests/benchmark/regression_tests | 2 -
tests/benchmark/run.sh | 34 -------
tests/benchmark/short_bench_tests | 2 -
tests/benchmark/urcu_1_seconds.tap | 1 +
tests/benchmark/urcu_30_seconds.tap | 1 +
tests/benchmark/urcu_3_seconds.tap | 1 +
tests/regression/Makefile.am | 105 +++++++++++++++------
.../rcutorture_urcu_bp_perf_global.tap.in | 1 +
.../rcutorture_urcu_bp_perf_percpu.tap.in | 1 +
.../rcutorture_urcu_bp_perf_perthread.tap.in | 1 +
.../rcutorture_urcu_bp_rperf_global.tap.in | 1 +
.../rcutorture_urcu_bp_rperf_percpu.tap.in | 1 +
.../rcutorture_urcu_bp_rperf_perthread.tap.in | 1 +
.../rcutorture_urcu_bp_stress_global.tap.in | 1 +
.../rcutorture_urcu_bp_stress_percpu.tap.in | 1 +
.../rcutorture_urcu_bp_stress_perthread.tap.in | 1 +
.../rcutorture_urcu_bp_uperf_global.tap.in | 1 +
.../rcutorture_urcu_bp_uperf_percpu.tap.in | 1 +
.../rcutorture_urcu_bp_uperf_perthread.tap.in | 1 +
.../rcutorture_urcu_mb_perf_global.tap.in | 1 +
.../rcutorture_urcu_mb_perf_percpu.tap.in | 1 +
.../rcutorture_urcu_mb_perf_perthread.tap.in | 1 +
.../rcutorture_urcu_mb_rperf_global.tap.in | 1 +
.../rcutorture_urcu_mb_rperf_percpu.tap.in | 1 +
.../rcutorture_urcu_mb_rperf_perthread.tap.in | 1 +
.../rcutorture_urcu_mb_stress_global.tap.in | 1 +
.../rcutorture_urcu_mb_stress_percpu.tap.in | 1 +
.../rcutorture_urcu_mb_stress_perthread.tap.in | 1 +
.../rcutorture_urcu_mb_uperf_global.tap.in | 1 +
.../rcutorture_urcu_mb_uperf_percpu.tap.in | 1 +
.../rcutorture_urcu_mb_uperf_perthread.tap.in | 1 +
.../rcutorture_urcu_membarrier_perf_global.tap.in | 1 +
.../rcutorture_urcu_membarrier_perf_percpu.tap.in | 1 +
...cutorture_urcu_membarrier_perf_perthread.tap.in | 1 +
.../rcutorture_urcu_membarrier_rperf_global.tap.in | 1 +
.../rcutorture_urcu_membarrier_rperf_percpu.tap.in | 1 +
...utorture_urcu_membarrier_rperf_perthread.tap.in | 1 +
...rcutorture_urcu_membarrier_stress_global.tap.in | 1 +
...rcutorture_urcu_membarrier_stress_percpu.tap.in | 1 +
...torture_urcu_membarrier_stress_perthread.tap.in | 1 +
.../rcutorture_urcu_membarrier_uperf_global.tap.in | 1 +
.../rcutorture_urcu_membarrier_uperf_percpu.tap.in | 1 +
...utorture_urcu_membarrier_uperf_perthread.tap.in | 1 +
.../rcutorture_urcu_qsbr_perf_global.tap.in | 1 +
.../rcutorture_urcu_qsbr_perf_percpu.tap.in | 1 +
.../rcutorture_urcu_qsbr_perf_perthread.tap.in | 1 +
.../rcutorture_urcu_qsbr_rperf_global.tap.in | 1 +
.../rcutorture_urcu_qsbr_rperf_percpu.tap.in | 1 +
.../rcutorture_urcu_qsbr_rperf_perthread.tap.in | 1 +
.../rcutorture_urcu_qsbr_stress_global.tap.in | 1 +
.../rcutorture_urcu_qsbr_stress_percpu.tap.in | 1 +
.../rcutorture_urcu_qsbr_stress_perthread.tap.in | 1 +
.../rcutorture_urcu_qsbr_uperf_global.tap.in | 1 +
.../rcutorture_urcu_qsbr_uperf_percpu.tap.in | 1 +
.../rcutorture_urcu_qsbr_uperf_perthread.tap.in | 1 +
.../rcutorture_urcu_signal_perf_global.tap.in | 1 +
.../rcutorture_urcu_signal_perf_percpu.tap.in | 1 +
.../rcutorture_urcu_signal_perf_perthread.tap.in | 1 +
.../rcutorture_urcu_signal_rperf_global.tap.in | 1 +
.../rcutorture_urcu_signal_rperf_percpu.tap.in | 1 +
.../rcutorture_urcu_signal_rperf_perthread.tap.in | 1 +
.../rcutorture_urcu_signal_stress_global.tap.in | 1 +
.../rcutorture_urcu_signal_stress_percpu.tap.in | 1 +
.../rcutorture_urcu_signal_stress_perthread.tap.in | 1 +
.../rcutorture_urcu_signal_uperf_global.tap.in | 1 +
.../rcutorture_urcu_signal_uperf_percpu.tap.in | 1 +
.../rcutorture_urcu_signal_uperf_perthread.tap.in | 1 +
tests/regression/regression_tests.in | 61 ------------
tests/regression/run.sh | 34 -------
tests/unit/Makefile.am | 8 +-
tests/unit/run.sh | 34 -------
tests/unit/test_loop | 12 ---
tests/unit/unit_tests | 3 -
82 files changed, 254 insertions(+), 231 deletions(-)
create mode 100755 tests/benchmark/hashtable_1_seconds.tap
create mode 100755 tests/benchmark/hashtable_30_seconds.tap
create mode 100755 tests/benchmark/hashtable_3_seconds.tap
delete mode 100644 tests/benchmark/long_bench_tests
delete mode 100644 tests/benchmark/regression_tests
delete mode 100755 tests/benchmark/run.sh
delete mode 100644 tests/benchmark/short_bench_tests
create mode 100755 tests/benchmark/urcu_1_seconds.tap
create mode 100755 tests/benchmark/urcu_30_seconds.tap
create mode 100755 tests/benchmark/urcu_3_seconds.tap
create mode 100644 tests/regression/rcutorture_urcu_bp_perf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_perf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_perf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_rperf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_rperf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_rperf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_stress_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_stress_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_stress_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_uperf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_uperf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_bp_uperf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_perf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_perf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_perf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_rperf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_rperf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_rperf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_stress_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_stress_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_stress_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_uperf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_uperf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_mb_uperf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_perf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_perf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_perf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_rperf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_rperf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_rperf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_stress_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_stress_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_stress_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_uperf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_uperf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_membarrier_uperf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_perf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_perf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_perf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_rperf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_rperf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_rperf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_stress_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_stress_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_stress_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_uperf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_uperf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_qsbr_uperf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_perf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_perf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_perf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_rperf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_rperf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_rperf_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_stress_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_stress_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_stress_perthread.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_uperf_global.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_uperf_percpu.tap.in
create mode 100644 tests/regression/rcutorture_urcu_signal_uperf_perthread.tap.in
delete mode 100644 tests/regression/regression_tests.in
delete mode 100755 tests/regression/run.sh
delete mode 100755 tests/unit/run.sh
delete mode 100755 tests/unit/test_loop
delete mode 100644 tests/unit/unit_tests
diff --git a/.gitignore b/.gitignore
index 7e7242a..d02ed09 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,14 +10,13 @@ tests/unit/test_urcu_multiflavor_dynlink
tests/utils/libtap.a
-tests/regression/rcutorture_qsbr
-tests/regression/rcutorture_urcu
+tests/regression/rcutorture_urcu_membarrier
tests/regression/rcutorture_urcu_bp
tests/regression/rcutorture_urcu_mb
tests/regression/rcutorture_urcu_qsbr
tests/regression/rcutorture_urcu_signal
-tests/regression/test_urcu_fork
-tests/regression/regression_tests
+tests/regression/test_urcu_fork.tap
+tests/regression/rcutorture*.tap
tests/benchmark/test_rwlock_timing
tests/benchmark/test_urcu
@@ -130,6 +129,8 @@ Makefile
*.o
*.lo
*.loT
+*.log
+*.trs
/config.log
/configure
/config/compile
@@ -139,6 +140,7 @@ Makefile
/config/install-sh
/config/ltmain.sh
/config/missing
+/config/test-driver
/aclocal.m4
/m4/libtool.m4
/m4/lt~obsolete.m4
diff --git a/Makefile.am b/Makefile.am
index dacbb3b..4b28966 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -11,10 +11,12 @@ EXTRA_DIST = gpl-2.0.txt \
lgpl-2.1.txt \
lgpl-relicensing.txt
-.PHONY: short_bench long_bench regtest
+.PHONY: short_bench long_bench regtest check-loop
short_bench:
cd tests && $(MAKE) $(AM_MAKEFLAGS) short_bench
long_bench:
cd tests && $(MAKE) $(AM_MAKEFLAGS) long_bench
regtest:
cd tests && $(MAKE) $(AM_MAKEFLAGS) regtest
+check-loop:
+ cd tests && $(MAKE) $(AM_MAKEFLAGS) check-loop
diff --git a/configure.ac b/configure.ac
index d2777d5..d0b4a9a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -18,6 +18,8 @@ AM_MAINTAINER_MODE([enable])
# Enable silent rules if available (Introduced in AM 1.11)
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
+AC_REQUIRE_AUX_FILE([tap-driver.sh])
+
AH_TEMPLATE([CONFIG_RCU_SMP], [Enable SMP support. With SMP support enabled, uniprocessors are also supported. With SMP support disabled, UP systems work fine, but the behavior of SMP systems is undefined.])
AH_TEMPLATE([CONFIG_RCU_HAVE_FENCE], [Defined when on a system that has memory fence instructions.])
AH_TEMPLATE([CONFIG_RCU_HAVE_FUTEX], [Defined when on a system with futex support.])
@@ -388,7 +390,6 @@ AC_CONFIG_FILES([
tests/unit/Makefile
tests/benchmark/Makefile
tests/regression/Makefile
- tests/regression/regression_tests
tests/utils/Makefile
src/liburcu.pc
src/liburcu-bp.pc
@@ -397,6 +398,69 @@ AC_CONFIG_FILES([
src/liburcu-mb.pc
src/liburcu-signal.pc
])
+
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_perf_global.tap], [chmod +x tests/regression/rcutorture_urcu_bp_perf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_perf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_bp_perf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_perf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_bp_perf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_rperf_global.tap], [chmod +x tests/regression/rcutorture_urcu_bp_rperf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_rperf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_bp_rperf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_rperf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_bp_rperf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_stress_global.tap], [chmod +x tests/regression/rcutorture_urcu_bp_stress_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_stress_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_bp_stress_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_stress_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_bp_stress_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_uperf_global.tap], [chmod +x tests/regression/rcutorture_urcu_bp_uperf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_uperf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_bp_uperf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_bp_uperf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_bp_uperf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_perf_global.tap], [chmod +x tests/regression/rcutorture_urcu_mb_perf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_perf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_mb_perf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_perf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_mb_perf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_rperf_global.tap], [chmod +x tests/regression/rcutorture_urcu_mb_rperf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_rperf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_mb_rperf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_rperf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_mb_rperf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_stress_global.tap], [chmod +x tests/regression/rcutorture_urcu_mb_stress_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_stress_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_mb_stress_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_stress_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_mb_stress_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_uperf_global.tap], [chmod +x tests/regression/rcutorture_urcu_mb_uperf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_uperf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_mb_uperf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_mb_uperf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_mb_uperf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_perf_global.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_perf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_perf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_perf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_perf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_perf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_rperf_global.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_rperf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_rperf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_rperf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_rperf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_rperf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_stress_global.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_stress_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_stress_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_stress_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_stress_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_stress_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_uperf_global.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_uperf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_uperf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_uperf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_membarrier_uperf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_membarrier_uperf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_perf_global.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_perf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_perf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_perf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_perf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_perf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_rperf_global.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_rperf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_rperf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_rperf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_rperf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_rperf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_stress_global.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_stress_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_stress_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_stress_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_stress_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_stress_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_uperf_global.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_uperf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_uperf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_uperf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_qsbr_uperf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_qsbr_uperf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_perf_global.tap], [chmod +x tests/regression/rcutorture_urcu_signal_perf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_perf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_signal_perf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_perf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_signal_perf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_rperf_global.tap], [chmod +x tests/regression/rcutorture_urcu_signal_rperf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_rperf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_signal_rperf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_rperf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_signal_rperf_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_stress_global.tap], [chmod +x tests/regression/rcutorture_urcu_signal_stress_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_stress_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_signal_stress_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_stress_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_signal_stress_perthread.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_uperf_global.tap], [chmod +x tests/regression/rcutorture_urcu_signal_uperf_global.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_uperf_percpu.tap], [chmod +x tests/regression/rcutorture_urcu_signal_uperf_percpu.tap])
+AC_CONFIG_FILES([tests/regression/rcutorture_urcu_signal_uperf_perthread.tap], [chmod +x tests/regression/rcutorture_urcu_signal_uperf_perthread.tap])
+
+
AC_OUTPUT
#
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 03f3f29..8e0e6d1 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,6 +1,6 @@
SUBDIRS = utils common unit benchmark regression
-.PHONY: short_bench long_bench regtest
+.PHONY: short_bench long_bench regtest check-loop
short_bench:
cd benchmark && $(MAKE) $(AM_MAKEFLAGS) short_bench
@@ -9,3 +9,11 @@ long_bench:
regtest:
cd regression && $(MAKE) $(AM_MAKEFLAGS) regtest
cd benchmark && $(MAKE) $(AM_MAKEFLAGS) regtest
+
+check-loop:
+ while [ 0 ]; do \
+ $(MAKE) $(AM_MAKEFLAGS) check; \
+ if [ "$$?" != "0" ]; then \
+ break; \
+ fi \
+ done
diff --git a/tests/benchmark/Makefile.am b/tests/benchmark/Makefile.am
index 216d013..5068d0e 100644
--- a/tests/benchmark/Makefile.am
+++ b/tests/benchmark/Makefile.am
@@ -1,7 +1,11 @@
AM_CFLAGS += -I$(top_srcdir)/include -I$(top_builddir)/include -I$(top_srcdir)/src -I$(top_srcdir)/tests/common -g
+TEST_EXTENSIONS = .tap
+TAP_LOG_DRIVER_FLAGS = --merge --comments
+TAP_LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) \
+ $(top_srcdir)/config/tap-driver.sh
+
SCRIPT_LIST = common.sh \
- run.sh \
run-urcu-tests.sh \
runhash.sh \
runtests.sh \
@@ -17,11 +21,13 @@ SCRIPT_LIST = common.sh \
dist_noinst_SCRIPTS = $(SCRIPT_LIST)
-TEST_LIST = regression_tests \
- short_bench_tests \
- long_bench_tests
-
-dist_noinst_DATA = $(TEST_LIST)
+dist_noinst_DATA = \
+ hashtable_1_seconds.tap \
+ urcu_1_seconds.tap
+ hashtable_3_seconds.tap \
+ urcu_3_seconds.tap
+ hashtable_30_seconds.tap \
+ urcu_30_seconds.tap
noinst_PROGRAMS = test_urcu test_urcu_dynamic_link test_urcu_timing \
test_urcu_signal test_urcu_signal_dynamic_link test_urcu_signal_timing \
@@ -228,11 +234,19 @@ clean-local:
.PHONY: short_bench long_bench regtest
+# This empty variable is required to enable the TAP test suite for custom
+# targets like 'regtest' while keeping the default 'check' a noop.
+TESTS =
+
+SHORT_BENCH_TESTS = urcu_3_seconds.tap hashtable_3_seconds.tap
+LONG_BENCH_TESTS = urcu_30_seconds.tap hashtable_30_seconds.tap
+REGTEST_TESTS = urcu_1_seconds.tap hashtable_1_seconds.tap
+
short_bench:
- ./run.sh short_bench_tests
+ $(MAKE) $(AM_MAKEFLAGS) check TESTS="$(SHORT_BENCH_TESTS)"
long_bench:
- ./run.sh long_bench_tests
+ $(MAKE) $(AM_MAKEFLAGS) check TESTS="$(LONG_BENCH_TESTS)"
regtest:
- ./run.sh regression_tests
+ $(MAKE) $(AM_MAKEFLAGS) check TESTS="$(REGTEST_TESTS)"
diff --git a/tests/benchmark/hashtable_1_seconds.tap b/tests/benchmark/hashtable_1_seconds.tap
new file mode 100755
index 0000000..48c4adb
--- /dev/null
+++ b/tests/benchmark/hashtable_1_seconds.tap
@@ -0,0 +1 @@
+./runhash.sh 1
diff --git a/tests/benchmark/hashtable_30_seconds.tap b/tests/benchmark/hashtable_30_seconds.tap
new file mode 100755
index 0000000..0c40ef8
--- /dev/null
+++ b/tests/benchmark/hashtable_30_seconds.tap
@@ -0,0 +1 @@
+./runhash.sh 30
diff --git a/tests/benchmark/hashtable_3_seconds.tap b/tests/benchmark/hashtable_3_seconds.tap
new file mode 100755
index 0000000..031aa77
--- /dev/null
+++ b/tests/benchmark/hashtable_3_seconds.tap
@@ -0,0 +1 @@
+./runhash.sh 3
diff --git a/tests/benchmark/long_bench_tests b/tests/benchmark/long_bench_tests
deleted file mode 100644
index 244f3c4..0000000
--- a/tests/benchmark/long_bench_tests
+++ /dev/null
@@ -1,2 +0,0 @@
-./run-urcu-tests.sh 30
-./runhash.sh 30
diff --git a/tests/benchmark/regression_tests b/tests/benchmark/regression_tests
deleted file mode 100644
index 436c330..0000000
--- a/tests/benchmark/regression_tests
+++ /dev/null
@@ -1,2 +0,0 @@
-./run-urcu-tests.sh 1
-./runhash.sh 1
diff --git a/tests/benchmark/run.sh b/tests/benchmark/run.sh
deleted file mode 100755
index 1ec7e5e..0000000
--- a/tests/benchmark/run.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-#
-# Copyright (C) 2013 - Christian Babeux <christian.babeux at efficios.com>
-# 2016 - Michael Jeanson <mjeanson at efficios.com>
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; only version 2
-# of the License.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-
-INPUT=$1
-ARGS=()
-shift 1
-
-if [ -z "${INPUT}" ]; then
- echo "Error: No testlist. Please specify a testlist to run."
- exit 1
-fi
-
-if [ "x$V" == "x1" ]; then
- ARGS+=('-v')
-fi
-
-prove "${@}" "${ARGS[@]}" --merge --exec '' - < "${INPUT}"
diff --git a/tests/benchmark/short_bench_tests b/tests/benchmark/short_bench_tests
deleted file mode 100644
index 9d01067..0000000
--- a/tests/benchmark/short_bench_tests
+++ /dev/null
@@ -1,2 +0,0 @@
-./run-urcu-tests.sh 3
-./runhash.sh 3
diff --git a/tests/benchmark/urcu_1_seconds.tap b/tests/benchmark/urcu_1_seconds.tap
new file mode 100755
index 0000000..8553ed9
--- /dev/null
+++ b/tests/benchmark/urcu_1_seconds.tap
@@ -0,0 +1 @@
+./run-urcu-tests.sh 1
diff --git a/tests/benchmark/urcu_30_seconds.tap b/tests/benchmark/urcu_30_seconds.tap
new file mode 100755
index 0000000..5c13dd9
--- /dev/null
+++ b/tests/benchmark/urcu_30_seconds.tap
@@ -0,0 +1 @@
+./run-urcu-tests.sh 30
diff --git a/tests/benchmark/urcu_3_seconds.tap b/tests/benchmark/urcu_3_seconds.tap
new file mode 100755
index 0000000..51f4412
--- /dev/null
+++ b/tests/benchmark/urcu_3_seconds.tap
@@ -0,0 +1 @@
+./run-urcu-tests.sh 3
diff --git a/tests/regression/Makefile.am b/tests/regression/Makefile.am
index c7d102f..183fefe 100644
--- a/tests/regression/Makefile.am
+++ b/tests/regression/Makefile.am
@@ -1,13 +1,12 @@
AM_CFLAGS += -I$(top_srcdir)/include -I$(top_builddir)/include -I$(top_srcdir)/src -I$(top_srcdir)/tests/utils -I$(top_srcdir)/tests/common -g
-SCRIPT_LIST = run.sh
+TEST_EXTENSIONS = .tap
+TAP_LOG_DRIVER_FLAGS = --merge --comments
+TAP_LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) \
+ $(top_srcdir)/config/tap-driver.sh
-dist_noinst_SCRIPTS = $(SCRIPT_LIST)
-
-dist_noinst_DATA = regression_tests.in
-
-noinst_PROGRAMS = test_urcu_fork \
- rcutorture_urcu \
+noinst_PROGRAMS = test_urcu_fork.tap \
+ rcutorture_urcu_membarrier \
rcutorture_urcu_signal \
rcutorture_urcu_mb \
rcutorture_urcu_bp \
@@ -24,12 +23,12 @@ URCU_BP_LIB=$(top_builddir)/src/liburcu-bp.la
URCU_CDS_LIB=$(top_builddir)/src/liburcu-cds.la
TAP_LIB=$(top_builddir)/tests/utils/libtap.a
-test_urcu_fork_SOURCES = test_urcu_fork.c
-test_urcu_fork_LDADD = $(URCU_LIB) $(TAP_LIB)
+test_urcu_fork_tap_SOURCES = test_urcu_fork.c
+test_urcu_fork_tap_LDADD = $(URCU_LIB) $(TAP_LIB)
-rcutorture_urcu_SOURCES = urcutorture.c
-rcutorture_urcu_CFLAGS = -DRCU_MEMBARRIER $(AM_CFLAGS)
-rcutorture_urcu_LDADD = $(URCU_LIB) $(TAP_LIB)
+rcutorture_urcu_membarrier_SOURCES = urcutorture.c
+rcutorture_urcu_membarrier_CFLAGS = -DRCU_MEMBARRIER $(AM_CFLAGS)
+rcutorture_urcu_membarrier_LDADD = $(URCU_LIB) $(TAP_LIB)
rcutorture_urcu_mb_SOURCES = urcutorture.c
rcutorture_urcu_mb_CFLAGS = -DRCU_MB $(AM_CFLAGS)
@@ -49,21 +48,73 @@ rcutorture_urcu_bp_LDADD = $(URCU_BP_LIB) $(TAP_LIB)
urcutorture.c: ../common/api.h
-all-local:
- @if [ x"$(srcdir)" != x"$(builddir)" ]; then \
- for script in $(SCRIPT_LIST); do \
- cp -f $(srcdir)/$$script $(builddir); \
- done; \
- fi
-
-clean-local:
- @if [ x"$(srcdir)" != x"$(builddir)" ]; then \
- for script in $(SCRIPT_LIST); do \
- rm -f $(builddir)/$$script; \
- done; \
- fi
-
.PHONY: regtest
+# This empty variable is required to enable the TAP test suite for custom
+# targets like 'regtest' while keeping the default 'check' a noop.
+TESTS =
+
+REGTEST_TESTS = test_urcu_fork.tap \
+ rcutorture_urcu_bp_perf_global.tap \
+ rcutorture_urcu_bp_perf_percpu.tap \
+ rcutorture_urcu_bp_perf_perthread.tap \
+ rcutorture_urcu_bp_rperf_global.tap \
+ rcutorture_urcu_bp_rperf_percpu.tap \
+ rcutorture_urcu_bp_rperf_perthread.tap \
+ rcutorture_urcu_bp_stress_global.tap \
+ rcutorture_urcu_bp_stress_percpu.tap \
+ rcutorture_urcu_bp_stress_perthread.tap \
+ rcutorture_urcu_bp_uperf_global.tap \
+ rcutorture_urcu_bp_uperf_percpu.tap \
+ rcutorture_urcu_bp_uperf_perthread.tap \
+ rcutorture_urcu_mb_perf_global.tap \
+ rcutorture_urcu_mb_perf_percpu.tap \
+ rcutorture_urcu_mb_perf_perthread.tap \
+ rcutorture_urcu_mb_rperf_global.tap \
+ rcutorture_urcu_mb_rperf_percpu.tap \
+ rcutorture_urcu_mb_rperf_perthread.tap \
+ rcutorture_urcu_mb_stress_global.tap \
+ rcutorture_urcu_mb_stress_percpu.tap \
+ rcutorture_urcu_mb_stress_perthread.tap \
+ rcutorture_urcu_mb_uperf_global.tap \
+ rcutorture_urcu_mb_uperf_percpu.tap \
+ rcutorture_urcu_mb_uperf_perthread.tap \
+ rcutorture_urcu_membarrier_perf_global.tap \
+ rcutorture_urcu_membarrier_perf_percpu.tap \
+ rcutorture_urcu_membarrier_perf_perthread.tap \
+ rcutorture_urcu_membarrier_rperf_global.tap \
+ rcutorture_urcu_membarrier_rperf_percpu.tap \
+ rcutorture_urcu_membarrier_rperf_perthread.tap \
+ rcutorture_urcu_membarrier_stress_global.tap \
+ rcutorture_urcu_membarrier_stress_percpu.tap \
+ rcutorture_urcu_membarrier_stress_perthread.tap \
+ rcutorture_urcu_membarrier_uperf_global.tap \
+ rcutorture_urcu_membarrier_uperf_percpu.tap \
+ rcutorture_urcu_membarrier_uperf_perthread.tap \
+ rcutorture_urcu_qsbr_perf_global.tap \
+ rcutorture_urcu_qsbr_perf_percpu.tap \
+ rcutorture_urcu_qsbr_perf_perthread.tap \
+ rcutorture_urcu_qsbr_rperf_global.tap \
+ rcutorture_urcu_qsbr_rperf_percpu.tap \
+ rcutorture_urcu_qsbr_rperf_perthread.tap \
+ rcutorture_urcu_qsbr_stress_global.tap \
+ rcutorture_urcu_qsbr_stress_percpu.tap \
+ rcutorture_urcu_qsbr_stress_perthread.tap \
+ rcutorture_urcu_qsbr_uperf_global.tap \
+ rcutorture_urcu_qsbr_uperf_percpu.tap \
+ rcutorture_urcu_qsbr_uperf_perthread.tap \
+ rcutorture_urcu_signal_perf_global.tap \
+ rcutorture_urcu_signal_perf_percpu.tap \
+ rcutorture_urcu_signal_perf_perthread.tap \
+ rcutorture_urcu_signal_rperf_global.tap \
+ rcutorture_urcu_signal_rperf_percpu.tap \
+ rcutorture_urcu_signal_rperf_perthread.tap \
+ rcutorture_urcu_signal_stress_global.tap \
+ rcutorture_urcu_signal_stress_percpu.tap \
+ rcutorture_urcu_signal_stress_perthread.tap \
+ rcutorture_urcu_signal_uperf_global.tap \
+ rcutorture_urcu_signal_uperf_percpu.tap \
+ rcutorture_urcu_signal_uperf_perthread.tap
+
regtest:
- ./run.sh regression_tests
+ $(MAKE) $(AM_MAKEFLAGS) check TESTS="$(REGTEST_TESTS)"
diff --git a/tests/regression/rcutorture_urcu_bp_perf_global.tap.in b/tests/regression/rcutorture_urcu_bp_perf_global.tap.in
new file mode 100644
index 0000000..3dc7ff4
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_perf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` perf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_bp_perf_percpu.tap.in b/tests/regression/rcutorture_urcu_bp_perf_percpu.tap.in
new file mode 100644
index 0000000..5bbaa92
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_perf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` perf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_bp_perf_perthread.tap.in b/tests/regression/rcutorture_urcu_bp_perf_perthread.tap.in
new file mode 100644
index 0000000..d89ceb8
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_perf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` perf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_bp_rperf_global.tap.in b/tests/regression/rcutorture_urcu_bp_rperf_global.tap.in
new file mode 100644
index 0000000..f992f26
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_rperf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` rperf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_bp_rperf_percpu.tap.in b/tests/regression/rcutorture_urcu_bp_rperf_percpu.tap.in
new file mode 100644
index 0000000..8ac8212
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_rperf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` rperf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_bp_rperf_perthread.tap.in b/tests/regression/rcutorture_urcu_bp_rperf_perthread.tap.in
new file mode 100644
index 0000000..69a7fbd
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_rperf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` rperf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_bp_stress_global.tap.in b/tests/regression/rcutorture_urcu_bp_stress_global.tap.in
new file mode 100644
index 0000000..7c6ee1f
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_stress_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` stress 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_bp_stress_percpu.tap.in b/tests/regression/rcutorture_urcu_bp_stress_percpu.tap.in
new file mode 100644
index 0000000..a0b19c3
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_stress_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` stress 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_bp_stress_perthread.tap.in b/tests/regression/rcutorture_urcu_bp_stress_perthread.tap.in
new file mode 100644
index 0000000..dbacd3f
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_stress_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` stress 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_bp_uperf_global.tap.in b/tests/regression/rcutorture_urcu_bp_uperf_global.tap.in
new file mode 100644
index 0000000..b157d24
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_uperf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` uperf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_bp_uperf_percpu.tap.in b/tests/regression/rcutorture_urcu_bp_uperf_percpu.tap.in
new file mode 100644
index 0000000..2c44eaa
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_uperf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` uperf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_bp_uperf_perthread.tap.in b/tests/regression/rcutorture_urcu_bp_uperf_perthread.tap.in
new file mode 100644
index 0000000..15e7d7d
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_bp_uperf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_bp `@NPROC_CMD@` uperf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_mb_perf_global.tap.in b/tests/regression/rcutorture_urcu_mb_perf_global.tap.in
new file mode 100644
index 0000000..65603e7
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_perf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` perf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_mb_perf_percpu.tap.in b/tests/regression/rcutorture_urcu_mb_perf_percpu.tap.in
new file mode 100644
index 0000000..9b877c4
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_perf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` perf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_mb_perf_perthread.tap.in b/tests/regression/rcutorture_urcu_mb_perf_perthread.tap.in
new file mode 100644
index 0000000..7da5afe
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_perf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` perf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_mb_rperf_global.tap.in b/tests/regression/rcutorture_urcu_mb_rperf_global.tap.in
new file mode 100644
index 0000000..1928d7d
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_rperf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` rperf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_mb_rperf_percpu.tap.in b/tests/regression/rcutorture_urcu_mb_rperf_percpu.tap.in
new file mode 100644
index 0000000..ffa90fb
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_rperf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` rperf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_mb_rperf_perthread.tap.in b/tests/regression/rcutorture_urcu_mb_rperf_perthread.tap.in
new file mode 100644
index 0000000..37be26e
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_rperf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` rperf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_mb_stress_global.tap.in b/tests/regression/rcutorture_urcu_mb_stress_global.tap.in
new file mode 100644
index 0000000..6a1cdd9
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_stress_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` stress 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_mb_stress_percpu.tap.in b/tests/regression/rcutorture_urcu_mb_stress_percpu.tap.in
new file mode 100644
index 0000000..d9994cd
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_stress_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` stress 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_mb_stress_perthread.tap.in b/tests/regression/rcutorture_urcu_mb_stress_perthread.tap.in
new file mode 100644
index 0000000..1eb07a3
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_stress_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` stress 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_mb_uperf_global.tap.in b/tests/regression/rcutorture_urcu_mb_uperf_global.tap.in
new file mode 100644
index 0000000..3d41a7c
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_uperf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` uperf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_mb_uperf_percpu.tap.in b/tests/regression/rcutorture_urcu_mb_uperf_percpu.tap.in
new file mode 100644
index 0000000..30ec884
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_uperf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` uperf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_mb_uperf_perthread.tap.in b/tests/regression/rcutorture_urcu_mb_uperf_perthread.tap.in
new file mode 100644
index 0000000..de5c153
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_mb_uperf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_mb `@NPROC_CMD@` uperf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_membarrier_perf_global.tap.in b/tests/regression/rcutorture_urcu_membarrier_perf_global.tap.in
new file mode 100644
index 0000000..a277d4e
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_perf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` perf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_membarrier_perf_percpu.tap.in b/tests/regression/rcutorture_urcu_membarrier_perf_percpu.tap.in
new file mode 100644
index 0000000..768a294
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_perf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` perf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_membarrier_perf_perthread.tap.in b/tests/regression/rcutorture_urcu_membarrier_perf_perthread.tap.in
new file mode 100644
index 0000000..a7baba4
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_perf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` perf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_membarrier_rperf_global.tap.in b/tests/regression/rcutorture_urcu_membarrier_rperf_global.tap.in
new file mode 100644
index 0000000..29000bb
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_rperf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` rperf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_membarrier_rperf_percpu.tap.in b/tests/regression/rcutorture_urcu_membarrier_rperf_percpu.tap.in
new file mode 100644
index 0000000..47c7351
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_rperf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` rperf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_membarrier_rperf_perthread.tap.in b/tests/regression/rcutorture_urcu_membarrier_rperf_perthread.tap.in
new file mode 100644
index 0000000..d947fd3
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_rperf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` rperf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_membarrier_stress_global.tap.in b/tests/regression/rcutorture_urcu_membarrier_stress_global.tap.in
new file mode 100644
index 0000000..f956efb
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_stress_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` stress 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_membarrier_stress_percpu.tap.in b/tests/regression/rcutorture_urcu_membarrier_stress_percpu.tap.in
new file mode 100644
index 0000000..6cf1504
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_stress_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` stress 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_membarrier_stress_perthread.tap.in b/tests/regression/rcutorture_urcu_membarrier_stress_perthread.tap.in
new file mode 100644
index 0000000..e6be1e6
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_stress_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` stress 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_membarrier_uperf_global.tap.in b/tests/regression/rcutorture_urcu_membarrier_uperf_global.tap.in
new file mode 100644
index 0000000..bd6d20e
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_uperf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` uperf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_membarrier_uperf_percpu.tap.in b/tests/regression/rcutorture_urcu_membarrier_uperf_percpu.tap.in
new file mode 100644
index 0000000..54c3cbe
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_uperf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` uperf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_membarrier_uperf_perthread.tap.in b/tests/regression/rcutorture_urcu_membarrier_uperf_perthread.tap.in
new file mode 100644
index 0000000..fb0dd5a
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_membarrier_uperf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_membarrier `@NPROC_CMD@` uperf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_qsbr_perf_global.tap.in b/tests/regression/rcutorture_urcu_qsbr_perf_global.tap.in
new file mode 100644
index 0000000..ddcac7a
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_perf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` perf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_qsbr_perf_percpu.tap.in b/tests/regression/rcutorture_urcu_qsbr_perf_percpu.tap.in
new file mode 100644
index 0000000..219646c
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_perf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` perf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_qsbr_perf_perthread.tap.in b/tests/regression/rcutorture_urcu_qsbr_perf_perthread.tap.in
new file mode 100644
index 0000000..d063fe4
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_perf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` perf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_qsbr_rperf_global.tap.in b/tests/regression/rcutorture_urcu_qsbr_rperf_global.tap.in
new file mode 100644
index 0000000..ef2dbed
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_rperf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` rperf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_qsbr_rperf_percpu.tap.in b/tests/regression/rcutorture_urcu_qsbr_rperf_percpu.tap.in
new file mode 100644
index 0000000..4c5d8d5
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_rperf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` rperf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_qsbr_rperf_perthread.tap.in b/tests/regression/rcutorture_urcu_qsbr_rperf_perthread.tap.in
new file mode 100644
index 0000000..badd161
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_rperf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` rperf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_qsbr_stress_global.tap.in b/tests/regression/rcutorture_urcu_qsbr_stress_global.tap.in
new file mode 100644
index 0000000..e3d1c4c
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_stress_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` stress 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_qsbr_stress_percpu.tap.in b/tests/regression/rcutorture_urcu_qsbr_stress_percpu.tap.in
new file mode 100644
index 0000000..f3018fe
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_stress_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` stress 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_qsbr_stress_perthread.tap.in b/tests/regression/rcutorture_urcu_qsbr_stress_perthread.tap.in
new file mode 100644
index 0000000..451072e
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_stress_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` stress 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_qsbr_uperf_global.tap.in b/tests/regression/rcutorture_urcu_qsbr_uperf_global.tap.in
new file mode 100644
index 0000000..1cdb803
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_uperf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` uperf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_qsbr_uperf_percpu.tap.in b/tests/regression/rcutorture_urcu_qsbr_uperf_percpu.tap.in
new file mode 100644
index 0000000..ee2c1bd
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_uperf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` uperf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_qsbr_uperf_perthread.tap.in b/tests/regression/rcutorture_urcu_qsbr_uperf_perthread.tap.in
new file mode 100644
index 0000000..fbabf97
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_qsbr_uperf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_qsbr `@NPROC_CMD@` uperf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_signal_perf_global.tap.in b/tests/regression/rcutorture_urcu_signal_perf_global.tap.in
new file mode 100644
index 0000000..20f967f
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_perf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` perf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_signal_perf_percpu.tap.in b/tests/regression/rcutorture_urcu_signal_perf_percpu.tap.in
new file mode 100644
index 0000000..53ec18e
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_perf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` perf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_signal_perf_perthread.tap.in b/tests/regression/rcutorture_urcu_signal_perf_perthread.tap.in
new file mode 100644
index 0000000..d8ca7ef
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_perf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` perf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_signal_rperf_global.tap.in b/tests/regression/rcutorture_urcu_signal_rperf_global.tap.in
new file mode 100644
index 0000000..2da3a93
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_rperf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` rperf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_signal_rperf_percpu.tap.in b/tests/regression/rcutorture_urcu_signal_rperf_percpu.tap.in
new file mode 100644
index 0000000..5497f2f
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_rperf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` rperf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_signal_rperf_perthread.tap.in b/tests/regression/rcutorture_urcu_signal_rperf_perthread.tap.in
new file mode 100644
index 0000000..6c62c15
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_rperf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` rperf 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_signal_stress_global.tap.in b/tests/regression/rcutorture_urcu_signal_stress_global.tap.in
new file mode 100644
index 0000000..c667dbf
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_stress_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` stress 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_signal_stress_percpu.tap.in b/tests/regression/rcutorture_urcu_signal_stress_percpu.tap.in
new file mode 100644
index 0000000..429b731
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_stress_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` stress 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_signal_stress_perthread.tap.in b/tests/regression/rcutorture_urcu_signal_stress_perthread.tap.in
new file mode 100644
index 0000000..62d190d
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_stress_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` stress 1 callrcu_perthread
diff --git a/tests/regression/rcutorture_urcu_signal_uperf_global.tap.in b/tests/regression/rcutorture_urcu_signal_uperf_global.tap.in
new file mode 100644
index 0000000..e86b6d7
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_uperf_global.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` uperf 1 callrcu_global
diff --git a/tests/regression/rcutorture_urcu_signal_uperf_percpu.tap.in b/tests/regression/rcutorture_urcu_signal_uperf_percpu.tap.in
new file mode 100644
index 0000000..c212711
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_uperf_percpu.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` uperf 1 callrcu_percpu
diff --git a/tests/regression/rcutorture_urcu_signal_uperf_perthread.tap.in b/tests/regression/rcutorture_urcu_signal_uperf_perthread.tap.in
new file mode 100644
index 0000000..1d92879
--- /dev/null
+++ b/tests/regression/rcutorture_urcu_signal_uperf_perthread.tap.in
@@ -0,0 +1 @@
+./rcutorture_urcu_signal `@NPROC_CMD@` uperf 1 callrcu_perthread
diff --git a/tests/regression/regression_tests.in b/tests/regression/regression_tests.in
deleted file mode 100644
index 26df110..0000000
--- a/tests/regression/regression_tests.in
+++ /dev/null
@@ -1,61 +0,0 @@
-./test_urcu_fork
-./rcutorture_urcu `@NPROC_CMD@` perf 1 callrcu_global
-./rcutorture_urcu_signal `@NPROC_CMD@` perf 1 callrcu_global
-./rcutorture_urcu_mb `@NPROC_CMD@` perf 1 callrcu_global
-./rcutorture_urcu_bp `@NPROC_CMD@` perf 1 callrcu_global
-./rcutorture_urcu_qsbr `@NPROC_CMD@` perf 1 callrcu_global
-./rcutorture_urcu `@NPROC_CMD@` rperf 1 callrcu_global
-./rcutorture_urcu_signal `@NPROC_CMD@` rperf 1 callrcu_global
-./rcutorture_urcu_mb `@NPROC_CMD@` rperf 1 callrcu_global
-./rcutorture_urcu_bp `@NPROC_CMD@` rperf 1 callrcu_global
-./rcutorture_urcu_qsbr `@NPROC_CMD@` rperf 1 callrcu_global
-./rcutorture_urcu `@NPROC_CMD@` uperf 1 callrcu_global
-./rcutorture_urcu_signal `@NPROC_CMD@` uperf 1 callrcu_global
-./rcutorture_urcu_mb `@NPROC_CMD@` uperf 1 callrcu_global
-./rcutorture_urcu_bp `@NPROC_CMD@` uperf 1 callrcu_global
-./rcutorture_urcu_qsbr `@NPROC_CMD@` uperf 1 callrcu_global
-./rcutorture_urcu `@NPROC_CMD@` stress 1 callrcu_global
-./rcutorture_urcu_signal `@NPROC_CMD@` stress 1 callrcu_global
-./rcutorture_urcu_mb `@NPROC_CMD@` stress 1 callrcu_global
-./rcutorture_urcu_bp `@NPROC_CMD@` stress 1 callrcu_global
-./rcutorture_urcu_qsbr `@NPROC_CMD@` stress 1 callrcu_global
-./rcutorture_urcu `@NPROC_CMD@` perf 1 callrcu_percpu
-./rcutorture_urcu_signal `@NPROC_CMD@` perf 1 callrcu_percpu
-./rcutorture_urcu_mb `@NPROC_CMD@` perf 1 callrcu_percpu
-./rcutorture_urcu_bp `@NPROC_CMD@` perf 1 callrcu_percpu
-./rcutorture_urcu_qsbr `@NPROC_CMD@` perf 1 callrcu_percpu
-./rcutorture_urcu `@NPROC_CMD@` rperf 1 callrcu_percpu
-./rcutorture_urcu_signal `@NPROC_CMD@` rperf 1 callrcu_percpu
-./rcutorture_urcu_mb `@NPROC_CMD@` rperf 1 callrcu_percpu
-./rcutorture_urcu_bp `@NPROC_CMD@` rperf 1 callrcu_percpu
-./rcutorture_urcu_qsbr `@NPROC_CMD@` rperf 1 callrcu_percpu
-./rcutorture_urcu `@NPROC_CMD@` uperf 1 callrcu_percpu
-./rcutorture_urcu_signal `@NPROC_CMD@` uperf 1 callrcu_percpu
-./rcutorture_urcu_mb `@NPROC_CMD@` uperf 1 callrcu_percpu
-./rcutorture_urcu_bp `@NPROC_CMD@` uperf 1 callrcu_percpu
-./rcutorture_urcu_qsbr `@NPROC_CMD@` uperf 1 callrcu_percpu
-./rcutorture_urcu `@NPROC_CMD@` stress 1 callrcu_percpu
-./rcutorture_urcu_signal `@NPROC_CMD@` stress 1 callrcu_percpu
-./rcutorture_urcu_mb `@NPROC_CMD@` stress 1 callrcu_percpu
-./rcutorture_urcu_bp `@NPROC_CMD@` stress 1 callrcu_percpu
-./rcutorture_urcu_qsbr `@NPROC_CMD@` stress 1 callrcu_percpu
-./rcutorture_urcu `@NPROC_CMD@` perf 1 callrcu_perthread
-./rcutorture_urcu_signal `@NPROC_CMD@` perf 1 callrcu_perthread
-./rcutorture_urcu_mb `@NPROC_CMD@` perf 1 callrcu_perthread
-./rcutorture_urcu_bp `@NPROC_CMD@` perf 1 callrcu_perthread
-./rcutorture_urcu_qsbr `@NPROC_CMD@` perf 1 callrcu_perthread
-./rcutorture_urcu `@NPROC_CMD@` rperf 1 callrcu_perthread
-./rcutorture_urcu_signal `@NPROC_CMD@` rperf 1 callrcu_perthread
-./rcutorture_urcu_mb `@NPROC_CMD@` rperf 1 callrcu_perthread
-./rcutorture_urcu_bp `@NPROC_CMD@` rperf 1 callrcu_perthread
-./rcutorture_urcu_qsbr `@NPROC_CMD@` rperf 1 callrcu_perthread
-./rcutorture_urcu `@NPROC_CMD@` uperf 1 callrcu_perthread
-./rcutorture_urcu_signal `@NPROC_CMD@` uperf 1 callrcu_perthread
-./rcutorture_urcu_mb `@NPROC_CMD@` uperf 1 callrcu_perthread
-./rcutorture_urcu_bp `@NPROC_CMD@` uperf 1 callrcu_perthread
-./rcutorture_urcu_qsbr `@NPROC_CMD@` uperf 1 callrcu_perthread
-./rcutorture_urcu `@NPROC_CMD@` stress 1 callrcu_perthread
-./rcutorture_urcu_signal `@NPROC_CMD@` stress 1 callrcu_perthread
-./rcutorture_urcu_mb `@NPROC_CMD@` stress 1 callrcu_perthread
-./rcutorture_urcu_bp `@NPROC_CMD@` stress 1 callrcu_perthread
-./rcutorture_urcu_qsbr `@NPROC_CMD@` stress 1 callrcu_perthread
diff --git a/tests/regression/run.sh b/tests/regression/run.sh
deleted file mode 100755
index 1ec7e5e..0000000
--- a/tests/regression/run.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-#
-# Copyright (C) 2013 - Christian Babeux <christian.babeux at efficios.com>
-# 2016 - Michael Jeanson <mjeanson at efficios.com>
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; only version 2
-# of the License.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-
-INPUT=$1
-ARGS=()
-shift 1
-
-if [ -z "${INPUT}" ]; then
- echo "Error: No testlist. Please specify a testlist to run."
- exit 1
-fi
-
-if [ "x$V" == "x1" ]; then
- ARGS+=('-v')
-fi
-
-prove "${@}" "${ARGS[@]}" --merge --exec '' - < "${INPUT}"
diff --git a/tests/unit/Makefile.am b/tests/unit/Makefile.am
index e6f7b3e..ade3555 100644
--- a/tests/unit/Makefile.am
+++ b/tests/unit/Makefile.am
@@ -1,12 +1,14 @@
AM_CFLAGS += -I$(top_srcdir)/include -I$(top_builddir)/include -I$(top_srcdir)/src -I$(top_srcdir)/tests/utils -I$(top_srcdir)/tests/common -g
-SCRIPT_LIST = test_loop run.sh unit_tests
+LOG_DRIVER_FLAGS = --merge --comments
+LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) \
+ $(top_srcdir)/config/tap-driver.sh
noinst_PROGRAMS = test_uatomic \
test_urcu_multiflavor \
test_urcu_multiflavor_dynlink
-dist_noinst_SCRIPTS = $(SCRIPT_LIST)
+TESTS = $(noinst_PROGRAMS)
noinst_HEADERS = test_urcu_multiflavor.h
@@ -55,5 +57,3 @@ clean-local:
done; \
fi
-check-am:
- ./run.sh unit_tests
diff --git a/tests/unit/run.sh b/tests/unit/run.sh
deleted file mode 100755
index 1ec7e5e..0000000
--- a/tests/unit/run.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-#
-# Copyright (C) 2013 - Christian Babeux <christian.babeux at efficios.com>
-# 2016 - Michael Jeanson <mjeanson at efficios.com>
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; only version 2
-# of the License.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-
-INPUT=$1
-ARGS=()
-shift 1
-
-if [ -z "${INPUT}" ]; then
- echo "Error: No testlist. Please specify a testlist to run."
- exit 1
-fi
-
-if [ "x$V" == "x1" ]; then
- ARGS+=('-v')
-fi
-
-prove "${@}" "${ARGS[@]}" --merge --exec '' - < "${INPUT}"
diff --git a/tests/unit/test_loop b/tests/unit/test_loop
deleted file mode 100755
index be3e16c..0000000
--- a/tests/unit/test_loop
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/bash
-
-DIR=$(dirname $0)
-
-while [ 0 ]; do
- $DIR/run.sh $DIR/unit_tests
- if [ "$?" != "0" ]; then
- break;
- fi
-done
-
-echo "$0: ********* STOPPED BECAUSE OF ERROR *********"
diff --git a/tests/unit/unit_tests b/tests/unit/unit_tests
deleted file mode 100644
index c6228a4..0000000
--- a/tests/unit/unit_tests
+++ /dev/null
@@ -1,3 +0,0 @@
-./test_uatomic
-./test_urcu_multiflavor
-./test_urcu_multiflavor_dynlink
--
2.7.4
More information about the lttng-dev
mailing list