torture: Stop hanging on panic
authorPaul E. McKenney <paulmck@kernel.org>
Thu, 3 Dec 2020 21:27:42 +0000 (13:27 -0800)
committerPaul E. McKenney <paulmck@kernel.org>
Mon, 4 Jan 2021 22:01:23 +0000 (14:01 -0800)
By default, the "panic" kernel parameter is zero, which causes the kernel
to loop indefinitely after a panic().  The rcutorture scripting will
eventually kill the corresponding qemu process, but only after waiting
for the full run duration plus a few minutes.  This works, but delays
notifying the developer of the failure.

This commit therefore causes the rcutorture scripting to pass the
"panic=-1" kernel parameter, which caused the kernel to instead
unceremoniously shut down immediately.  This in turn causes qemu to
terminate, so that if all of the runs in a given batch panic(), the
rcutorture scripting can immediately proceed to the next batch.

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

index 97c3a1764858ce3fb8a0614d08119ff4c0b8d387..c35ba24f994c36b82b94e7536d8715fc677b599c 100644 (file)
@@ -203,6 +203,7 @@ identify_qemu () {
 # and the TORTURE_QEMU_INTERACTIVE environment variable.
 identify_qemu_append () {
        echo debug_boot_weak_hash
+       echo panic=-1
        local console=ttyS0
        case "$1" in
        qemu-system-x86_64|qemu-system-i386)