summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2017-07-17 21:54:51 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2017-07-17 21:54:51 +0200
commit31ba04d99a71e7867a27c521a8cb09a4f707ccd2 (patch)
tree1125771899d0b1924ab4f7f0393a3de8a1fb3b74
parentMerge tag 'regmap-fix-w1-merge-window' of git://git.kernel.org/pub/scm/linux/... (diff)
parentsmp/hotplug: Replace BUG_ON and react useful (diff)
downloadlinux-31ba04d99a71e7867a27c521a8cb09a4f707ccd2.tar.xz
linux-31ba04d99a71e7867a27c521a8cb09a4f707ccd2.zip
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);