lkml.org 
[lkml]   [2020]   [Dec]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 4.19 13/87] torture: Prevent jitter processes from delaying failed run
    Date
    From: "Paul E. McKenney" <paulmck@kernel.org>

    [ Upstream commit c64659ef29e3901be0900ec6fb0485fa3dbdcfd8 ]

    Even when the kernel panics and qemu dies, runs with jitter enabled will
    continue uselessly until the jitter.sh processes terminate. This can
    be annoying if a planned one-hour run instead dies during boot.

    This commit therefore kills the jitter.sh processes when the run ends
    more than one minute prior to the termination time specified by the
    kvm.sh --duration argument or its default.

    Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    .../selftests/rcutorture/bin/kvm-test-1-run.sh | 14 ++++++++++++++
    tools/testing/selftests/rcutorture/bin/kvm.sh | 5 ++++-
    2 files changed, 18 insertions(+), 1 deletion(-)

    diff --git a/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh b/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh
    index f7247ee00514d..73cba8d13179c 100755
    --- a/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh
    +++ b/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh
    @@ -216,6 +216,20 @@ do
    echo "ps -fp $killpid" >> $resdir/Warnings 2>&1
    ps -fp $killpid >> $resdir/Warnings 2>&1
    fi
    + # Reduce probability of PID reuse by allowing a one-minute buffer
    + if test $((kruntime + 60)) -lt $seconds && test -s "$resdir/../jitter_pids"
    + then
    + awk < "$resdir/../jitter_pids" '
    + NF > 0 {
    + pidlist = pidlist " " $1;
    + n++;
    + }
    + END {
    + if (n > 0) {
    + print "kill " pidlist;
    + }
    + }' | sh
    + fi
    else
    echo ' ---' `date`: "Kernel done"
    fi
    diff --git a/tools/testing/selftests/rcutorture/bin/kvm.sh b/tools/testing/selftests/rcutorture/bin/kvm.sh
    index 5a7a62d76a50b..02fd8a19fa7ea 100755
    --- a/tools/testing/selftests/rcutorture/bin/kvm.sh
    +++ b/tools/testing/selftests/rcutorture/bin/kvm.sh
    @@ -401,8 +401,11 @@ function dump(first, pastlast, batchnum)
    print "if test -n \"$needqemurun\""
    print "then"
    print "\techo ---- Starting kernels. `date` | tee -a " rd "log";
    - for (j = 0; j < njitter; j++)
    + print "\techo > " rd "jitter_pids"
    + for (j = 0; j < njitter; j++) {
    print "\tjitter.sh " j " " dur " " ja[2] " " ja[3] "&"
    + print "\techo $! >> " rd "jitter_pids"
    + }
    print "\twait"
    print "\techo ---- All kernel runs complete. `date` | tee -a " rd "log";
    print "else"
    --
    2.27.0
    \
     
     \ /
      Last update: 2020-12-23 03:53    [W:5.956 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site