sched/core: WARN() when migrating to an offline CPU

Migrating tasks to offline CPUs is a pretty big fail, warn about it.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20170907150614.094206976@infradead.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>

authored by

Peter Zijlstra and committed by
Ingo Molnar
4ff9083b edd8e41d

+4
+4
kernel/sched/core.c
··· 1173 WARN_ON_ONCE(debug_locks && !(lockdep_is_held(&p->pi_lock) || 1174 lockdep_is_held(&task_rq(p)->lock))); 1175 #endif 1176 #endif 1177 1178 trace_sched_migrate_task(p, new_cpu);
··· 1173 WARN_ON_ONCE(debug_locks && !(lockdep_is_held(&p->pi_lock) || 1174 lockdep_is_held(&task_rq(p)->lock))); 1175 #endif 1176 + /* 1177 + * Clearly, migrating tasks to offline CPUs is a fairly daft thing. 1178 + */ 1179 + WARN_ON_ONCE(!cpu_online(new_cpu)); 1180 #endif 1181 1182 trace_sched_migrate_task(p, new_cpu);