summaryrefslogtreecommitdiffstats
path: root/kernel/torture.c
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@linux.ibm.com>2019-01-22 19:23:00 -0800
committerPaul E. McKenney <paulmck@linux.ibm.com>2019-03-26 14:42:53 -0700
commit24aca4aea4f0179e0e56cf9ec610c27d07702945 (patch)
tree72f765ac677410cbe5cf9fd69a156efb10b34df9 /kernel/torture.c
parent9e98c678c2d6ae3a17cb2de55d17f69dddaa231b (diff)
downloadlinux-24aca4aea4f0179e0e56cf9ec610c27d07702945.tar.gz
linux-24aca4aea4f0179e0e56cf9ec610c27d07702945.tar.bz2
linux-24aca4aea4f0179e0e56cf9ec610c27d07702945.zip
torture: Don't try to offline the last CPU
If there is only one online CPU, it doesn't make sense to try to offline it, as any such attempt is guaranteed to fail. This commit therefore check for this condition and refuses to attempt the nonsensical. Reported-by: Su Yue <suy.fnst@cn.fujitsu.com> Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com> Tested-By: Su Yue <suy.fnst@cn.fujitsu.com>
Diffstat (limited to 'kernel/torture.c')
-rw-r--r--kernel/torture.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/torture.c b/kernel/torture.c
index 8faa1a9aaeb9..17b2be9bde12 100644
--- a/kernel/torture.c
+++ b/kernel/torture.c
@@ -88,6 +88,8 @@ bool torture_offline(int cpu, long *n_offl_attempts, long *n_offl_successes,
if (!cpu_online(cpu) || !cpu_is_hotpluggable(cpu))
return false;
+ if (num_online_cpus() <= 1)
+ return false; /* Can't offline the last CPU. */
if (verbose > 1)
pr_alert("%s" TORTURE_FLAG