[tip: core/rcu] torture: Make torture.sh use common time-duration bash functions

From: tip-bot2 for Paul E. McKenney
Date: Fri Feb 12 2021 - 07:50:24 EST


The following commit has been merged into the core/rcu branch of tip:

Commit-ID: 1adb5d6b52251105f77630432b36e340cdcb3390
Gitweb: https://git.kernel.org/tip/1adb5d6b52251105f77630432b36e340cdcb3390
Author: Paul E. McKenney <paulmck@xxxxxxxxxx>
AuthorDate: Sun, 22 Nov 2020 16:49:15 -08:00
Committer: Paul E. McKenney <paulmck@xxxxxxxxxx>
CommitterDate: Wed, 06 Jan 2021 17:03:37 -08:00

torture: Make torture.sh use common time-duration bash functions

This commit makes torture.sh use the new bash functions get_starttime()
and get_starttime_duration() created for kvm.sh.

Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxx>
---
tools/testing/selftests/rcutorture/bin/torture.sh | 20 ++++----------
1 file changed, 7 insertions(+), 13 deletions(-)
mode change 100644 => 100755 tools/testing/selftests/rcutorture/bin/torture.sh

diff --git a/tools/testing/selftests/rcutorture/bin/torture.sh b/tools/testing/selftests/rcutorture/bin/torture.sh
old mode 100644
new mode 100755
index 7f21aab..1657404
--- a/tools/testing/selftests/rcutorture/bin/torture.sh
+++ b/tools/testing/selftests/rcutorture/bin/torture.sh
@@ -13,6 +13,10 @@
scriptname=$0
args="$*"

+KVM="`pwd`/tools/testing/selftests/rcutorture"; export KVM
+PATH=${KVM}/bin:$PATH; export PATH
+. functions.sh
+
# Default duration and apportionment.
duration_base=10
duration_rcutorture_frac=7
@@ -172,7 +176,7 @@ touch $T/successes

ds="`date +%Y.%m.%d-%H.%M.%S`-torture"
startdate="`date`"
-starttime="`awk 'BEGIN { print systime() }' < /dev/null`"
+starttime="`get_starttime`"

# tortureme flavor command
# Note that "flavor" is an arbitrary string. Supply --torture if needed.
@@ -274,17 +278,7 @@ then
nfailures="`wc -l "$T/failures" | awk '{ print $1 }'`"
ret=2
fi
-duration="`awk -v starttime=$starttime '
-BEGIN {
- s = systime() - starttime;
- h = s / 3600;
- d = h /24;
- if (d < 1)
- print h " hours";
- else
- print d " days (" h " hours)";
-}' < /dev/null`"
-echo Started at $startdate, ended at `date`, duration $duration. | tee -a $T/log
+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
tdir="`cat $T/successes $T/failures | head -1 | awk '{ print $NF }' | sed -e 's,/[^/]\+/*$,,'`"
if test -n "$tdir"
@@ -293,9 +287,9 @@ then
fi
exit $ret

+# @@@
# RCU CPU stall warnings?
# scftorture warnings?
# Need a way for the invoker to specify clang.
# Work out --configs based on number of available CPUs?
-# Need a way to specify --configs. --configs--rcutorture?
# Need to sense CPUs to size scftorture run. Ditto rcuscale and refscale.