Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0ae3f73a authored by Paul E. McKenney's avatar Paul E. McKenney
Browse files

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: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: default avatarJosh Triplett <josh@joshtriplett.org>
parent a7582815
Loading
Loading
Loading
Loading
+13 −16
Original line number Diff line number Diff line
@@ -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++;
	}
}