Merge branch 'smp-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 7 Dec 2017 01:45:36 +0000 (17:45 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 7 Dec 2017 01:45:36 +0000 (17:45 -0800)
Pull CPU hotplug fix from Ingo Molnar:
 "A single fix moving the smp-call queue flush step to the intended
  point in the state machine"

* 'smp-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  smp/hotplug: Move step CPUHP_AP_SMPCFD_DYING to the correct place

1  2 
kernel/cpu.c

diff --combined kernel/cpu.c
@@@ -780,8 -780,8 +780,8 @@@ static int takedown_cpu(unsigned int cp
        BUG_ON(cpu_online(cpu));
  
        /*
 -       * The CPUHP_AP_SCHED_MIGRATE_DYING callback will have removed all
 -       * runnable tasks from the cpu, there's only the idle task left now
 +       * The teardown callback for CPUHP_AP_SCHED_STARTING will have removed
 +       * all runnable tasks from the CPU, there's only the idle task left now
         * that the migration thread is done doing the stop_machine thing.
         *
         * Wait for the stop thread to go away.
@@@ -1289,11 -1289,6 +1289,6 @@@ static struct cpuhp_step cpuhp_bp_state
                .teardown.single        = NULL,
                .cant_stop              = true,
        },
-       [CPUHP_AP_SMPCFD_DYING] = {
-               .name                   = "smpcfd:dying",
-               .startup.single         = NULL,
-               .teardown.single        = smpcfd_dying_cpu,
-       },
        /*
         * Handled on controll processor until the plugged processor manages
         * this itself.
@@@ -1335,6 -1330,11 +1330,11 @@@ static struct cpuhp_step cpuhp_ap_state
                .startup.single         = NULL,
                .teardown.single        = rcutree_dying_cpu,
        },
+       [CPUHP_AP_SMPCFD_DYING] = {
+               .name                   = "smpcfd:dying",
+               .startup.single         = NULL,
+               .teardown.single        = smpcfd_dying_cpu,
+       },
        /* Entry state on starting. Interrupts enabled from here on. Transient
         * state for synchronsization */
        [CPUHP_AP_ONLINE] = {