rcutorture: Handle multiple runs of the same test

This commit fixes handling numbering of multiple runs of the same test
so as to disambiguate output.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
This commit is contained in:
Paul E. McKenney 2014-01-17 03:29:12 -08:00
parent a7582815b9
commit 0ae3f73af5

View file

@ -238,42 +238,39 @@ function dump(first, pastlast)
jn=1
for (j = first; j < pastlast; j++) {
builddir=KVM "/b" jn
print "echo ", cf[j], cpus[j] ": Starting build."
print "rm -f " builddir ".*"
print "touch " builddir ".wait"
print "mkdir " builddir " > /dev/null 2>&1 || :"
cpusr[jn] = cpus[j];
if (cfrep[cf[j]] == "") {
cfr[j] = cf[j];
cfr[jn] = cf[j];
cfrep[cf[j]] = 1;
} else {
cfrep[cf[j]]++;
cfr[j] = cf[j] "." cfrep[cf[j]];
cfr[jn] = cf[j] "." cfrep[cf[j]];
}
print "mkdir " rd cfr[j] " || :";
print "kvm-test-1-rcu.sh " CONFIGDIR cf[j], builddir, rd cfr[j], dur " \"" RCU_QEMU_ARG "\" \"" RCU_BOOTARGS "\" > " builddir ".out 2>&1 &"
print "echo ", cf[j], cpus[j] ": Waiting for build to complete."
print "echo ", cfr[jn], cpusr[jn] ": Starting build.";
print "rm -f " builddir ".*";
print "touch " builddir ".wait";
print "mkdir " builddir " > /dev/null 2>&1 || :";
print "mkdir " rd cfr[jn] " || :";
print "kvm-test-1-rcu.sh " CONFIGDIR cf[j], builddir, rd cfr[jn], dur " \"" RCU_QEMU_ARG "\" \"" RCU_BOOTARGS "\" > " builddir ".out 2>&1 &"
print "echo ", cfr[jn], cpusr[jn] ": Waiting for build to complete."
print "while test -f " builddir ".wait"
print "do"
print "\tsleep 1"
print "done"
print "echo ", cf[j], cpus[j] ": Build complete."
print "echo ", cfr[jn], cpusr[jn] ": Build complete."
jn++;
}
k = first
for (j = 1; j < jn; j++) {
builddir=KVM "/b" j
print "rm -f " builddir ".ready"
print "echo ----", cf[k], cpus[k] ": Starting kernel"
k++;
print "echo ----", cfr[j], cpusr[j] ": Starting kernel"
}
print "wait"
print "echo ---- All kernel runs complete"
k = first
for (j = 1; j < jn; j++) {
builddir=KVM "/b" j
print "echo ----", cf[k], cpus[k] ": Build/run results:"
print "echo ----", cfr[j], cpusr[j] ": Build/run results:"
print "cat " builddir ".out"
k++;
}
}