diff --git a/kernel/cpu.c b/kernel/cpu.c index a79a8371972d..25538738da7b 100644 --- a/kernel/cpu.c +++ b/kernel/cpu.c @@ -1310,6 +1310,7 @@ static int __ref _cpu_down(unsigned int cpu, int tasks_frozen, goto restore_cpus; } + migrate_enable(); cpu_hotplug_begin(); ret = cpu_unplug_begin(cpu); if (ret) { @@ -1357,7 +1358,6 @@ static int __ref _cpu_down(unsigned int cpu, int tasks_frozen, cpu_unplug_done(cpu); out_cancel: cpu_hotplug_done(); - migrate_enable(); /* This post dead nonsense must die */ if (!ret && hasdied) cpu_notify_nofail(CPU_POST_DEAD, cpu);