• Peter Zijlstra's avatar
    sched: Simplify cpu-hot-unplug task migration · 48c5ccae
    Peter Zijlstra authored
    While discussing the need for sched_idle_next(), Oleg remarked that
    since try_to_wake_up() ensures sleeping tasks will end up running on a
    sane cpu, we can do away with migrate_live_tasks().
    
    If we then extend the existing hack of migrating current from
    CPU_DYING to migrating the full rq worth of tasks from CPU_DYING, the
    need for the sched_idle_next() abomination disappears as well, since
    idle will be the only possible thread left after the migration thread
    stops.
    
    This greatly simplifies the hot-unplug task migration path, as can be
    seen from the resulting code reduction (and about half the new lines
    are comments).
    Suggested-by: default avatarOleg Nesterov <oleg@redhat.com>
    Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
    LKML-Reference: <1289851597.2109.547.camel@laptop>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    48c5ccae
cpu.c 13.5 KB