summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2017-07-17 22:54:51 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2017-07-17 22:54:51 +0300
commit31ba04d99a71e7867a27c521a8cb09a4f707ccd2 (patch)
tree1125771899d0b1924ab4f7f0393a3de8a1fb3b74
parent338a57d5cb034172d28de34bd7d122bfcd90bff2 (diff)
parentdea1d0f5f1284e3defee4b8484d9fc230686cd42 (diff)
downloadlinux-31ba04d99a71e7867a27c521a8cb09a4f707ccd2.tar.xz
Merge branch 'smp-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull SMP fix from Thomas Gleixner: "Replace the bogus BUG_ON in the cpu hotplug code" * 'smp-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: smp/hotplug: Replace BUG_ON and react useful
-rw-r--r--kernel/cpu.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/cpu.c b/kernel/cpu.c
index ab860453841d..eee033134262 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -279,7 +279,8 @@ static int bringup_wait_for_ap(unsigned int cpu)
/* Wait for the CPU to reach CPUHP_AP_ONLINE_IDLE */
wait_for_completion(&st->done);
- BUG_ON(!cpu_online(cpu));
+ if (WARN_ON_ONCE((!cpu_online(cpu))))
+ return -ECANCELED;
/* Unpark the stopper thread and the hotplug thread of the target cpu */
stop_machine_unpark(cpu);