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

tools/memory-model: Make cmplitmushist.sh note timeouts



Currently, cmplitmushist.sh treats timeouts (as in the "--timeout"
argument) as "Missing Observation line".  This can be misleading because
it is quite possible that running the test longer would have produced
a verification.  This commit therefore changes cmplitmushist.sh to check
for timeouts and to report them with "Timed out".

Signed-off-by: default avatarPaul E. McKenney <paulmck@kernel.org>
parent 2c644d3f
Loading
Loading
Loading
Loading
+22 −0
Original line number Diff line number Diff line
@@ -12,12 +12,30 @@ trap 'rm -rf $T' 0
mkdir $T

# comparetest oldpath newpath
timedout=0
perfect=0
obsline=0
noobsline=0
obsresult=0
badcompare=0
comparetest () {
	if grep -q '^Command exited with non-zero status 124' $1 ||
	   grep -q '^Command exited with non-zero status 124' $2
	then
		if grep -q '^Command exited with non-zero status 124' $1 &&
		   grep -q '^Command exited with non-zero status 124' $2
		then
			echo Both runs timed out: $2
		elif grep -q '^Command exited with non-zero status 124' $1
		then
			echo Old run timed out: $2
		elif grep -q '^Command exited with non-zero status 124' $2
		then
			echo New run timed out: $2
		fi
		timedout=`expr "$timedout" + 1`
		return 0
	fi
	grep -v 'maxresident)k\|minor)pagefaults\|^Time' $1 > $T/oldout
	grep -v 'maxresident)k\|minor)pagefaults\|^Time' $2 > $T/newout
	if cmp -s $T/oldout $T/newout && grep -q '^Observation' $1
@@ -78,6 +96,10 @@ if test "$obsresult" -ne 0
then
	echo Matching Observation Always/Sometimes/Never result: $obsresult 1>&2
fi
if test "$timedout" -ne 0
then
	echo "!!!" Timed out: $timedout 1>&2
fi
if test "$badcompare" -ne 0
then
	echo "!!!" Result changed: $badcompare 1>&2