Commit 70f11205 authored by Peter Zijlstra's avatar Peter Zijlstra Committed by Ingo Molnar

sched: Fix hotplug hang

The hot-unplug kstopmachine usage does a wakeup after
deactivating the cpu, hence we cannot use cpu_active()
here but must rely on the good olde online.
Reported-by: default avatarSachin Sant <sachinp@in.ibm.com>
Reported-by: default avatarJens Axboe <jens.axboe@oracle.com>
Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
Tested-by: default avatarJens Axboe <jens.axboe@oracle.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
LKML-Reference: <1261326987.4314.24.camel@laptop>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 3df0fc5b
...@@ -2346,7 +2346,7 @@ int select_task_rq(struct task_struct *p, int sd_flags, int wake_flags) ...@@ -2346,7 +2346,7 @@ int select_task_rq(struct task_struct *p, int sd_flags, int wake_flags)
* not worry about this generic constraint ] * not worry about this generic constraint ]
*/ */
if (unlikely(!cpumask_test_cpu(cpu, &p->cpus_allowed) || if (unlikely(!cpumask_test_cpu(cpu, &p->cpus_allowed) ||
!cpu_active(cpu))) !cpu_online(cpu)))
cpu = select_fallback_rq(task_cpu(p), p); cpu = select_fallback_rq(task_cpu(p), p);
return cpu; return cpu;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment