summaryrefslogtreecommitdiffstats
path: root/kernel/scftorture.c
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@kernel.org>2021-07-13 23:20:35 +0200
committerPaul E. McKenney <paulmck@kernel.org>2021-09-16 19:27:48 +0200
commit2b1388f8a408e68fda6443ec166f42ae4ffca87c (patch)
tree22f9eeefd5d971f17cd08d1544ce5077b1e36a83 /kernel/scftorture.c
parentscftorture: Allow zero weight to exclude an smp_call_function*() category (diff)
downloadlinux-2b1388f8a408e68fda6443ec166f42ae4ffca87c.tar.xz
linux-2b1388f8a408e68fda6443ec166f42ae4ffca87c.zip
scftorture: Shut down if nonsensical arguments given
If (say) a 10-hour scftorture run is started, but the module parameters are so nonsensical that the run doesn't even start, then scftorture will wait the full ten hours when run built into a guest OS. This commit therefore shuts down the system in this case so that the error is reported immediately instead of ten hours hence. Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Diffstat (limited to 'kernel/scftorture.c')
-rw-r--r--kernel/scftorture.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/scftorture.c b/kernel/scftorture.c
index bc3f8e26345c..31b458b3b113 100644
--- a/kernel/scftorture.c
+++ b/kernel/scftorture.c
@@ -651,6 +651,10 @@ static int __init scf_torture_init(void)
unwind:
torture_init_end();
scf_torture_cleanup();
+ if (shutdown_secs) {
+ WARN_ON(!IS_MODULE(CONFIG_SCF_TORTURE_TEST));
+ kernel_power_off();
+ }
return firsterr;
}