torture: Indicate which torture.sh runs' bugs are all KCSAN reports
authorPaul E. McKenney <paulmck@kernel.org>
Mon, 6 Dec 2021 17:13:37 +0000 (09:13 -0800)
committerPaul E. McKenney <paulmck@kernel.org>
Wed, 2 Feb 2022 01:25:41 +0000 (17:25 -0800)
This commit further improves torture.sh run summaries by indicating
which runs' "Bugs:" counts are all KCSAN reports, and further printing
an additional end-of-run summary line when all errors reported in all
runs were KCSAN reports.

Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
tools/testing/selftests/rcutorture/bin/torture.sh

index 894f589dd562586e10ac2c1108cb61f40b494ea1..bddce72ea5ce4836255457a88788a79cef609f57 100755 (executable)
@@ -414,8 +414,14 @@ nfailures=0
 echo FAILURES: | tee -a $T/log
 if test -s "$T/failures"
 then
-       awk < "$T/failures" -v sq="'" '{ print "echo " sq $0 sq; print "grep Summary: " $2 "/log | sed -e " sq "s/^[^S]*/  /" sq; }' | sh | tee -a $T/log
+       awk < "$T/failures" -v sq="'" '{ print "echo " sq $0 sq; print "grep Summary: " $2 "/log | sed -e " sq "s/^[^S]*/  /" sq; }' | sh | tee -a $T/log | tee "$T/failuresum"
        nfailures="`wc -l "$T/failures" | awk '{ print $1 }'`"
+       grep "^  Summary: " "$T/failuresum" |
+               grep -v '^  Summary: Bugs: [0-9]* (all bugs kcsan)$' > "$T/nonkcsan"
+       if test -s "$T/nonkcsan"
+       then
+               nonkcsanbug="yes"
+       fi
        ret=2
 fi
 if test "$do_kcsan" = "yes"
@@ -424,6 +430,10 @@ then
 fi
 echo Started at $startdate, ended at `date`, duration `get_starttime_duration $starttime`. | tee -a $T/log
 echo Summary: Successes: $nsuccesses Failures: $nfailures. | tee -a $T/log
+if test -z "$nonkcsanbug" && test -s "$T/failuresum"
+then
+       echo "  All bugs were KCSAN failures."
+fi
 tdir="`cat $T/successes $T/failures | head -1 | awk '{ print $NF }' | sed -e 's,/[^/]\+/*$,,'`"
 if test -n "$tdir" && test $compress_kasan_vmlinux -gt 0
 then