Resolved conflict in kernel/sched/core.c using Peter Zijlstra's
approach from https://lkml.org/lkml/2012/9/5/585.
migrate_tasks(cpu);
BUG_ON(rq->nr_running != 1); /* the migration thread */
raw_spin_unlock_irqrestore(&rq->lock, flags);
+ break;
- {
- struct rq *dest_rq;
-
- local_irq_save(flags);
- dest_rq = cpu_rq(smp_processor_id());
- raw_spin_lock(&dest_rq->lock);
- calc_load_migrate(rq);
- raw_spin_unlock_irqrestore(&dest_rq->lock, flags);
- }
+ case CPU_DEAD:
+ calc_load_migrate(rq);
break;
#endif
}