Commit 1be6f10f authored by Michael Ellerman's avatar Michael Ellerman

Revert "powerpc: Secondary CPUs must set cpu_callin_map after setting active and online"

This reverts commit 7c5c92ed.

Although this did fix the bug it was aimed at, it also broke secondary
startup on platforms that use give/take_timebase(). Unfortunately we
didn't detect that while it was in next.
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent c1caae3d
...@@ -700,6 +700,7 @@ void start_secondary(void *unused) ...@@ -700,6 +700,7 @@ void start_secondary(void *unused)
smp_store_cpu_info(cpu); smp_store_cpu_info(cpu);
set_dec(tb_ticks_per_jiffy); set_dec(tb_ticks_per_jiffy);
preempt_disable(); preempt_disable();
cpu_callin_map[cpu] = 1;
if (smp_ops->setup_cpu) if (smp_ops->setup_cpu)
smp_ops->setup_cpu(cpu); smp_ops->setup_cpu(cpu);
...@@ -738,14 +739,6 @@ void start_secondary(void *unused) ...@@ -738,14 +739,6 @@ void start_secondary(void *unused)
notify_cpu_starting(cpu); notify_cpu_starting(cpu);
set_cpu_online(cpu, true); set_cpu_online(cpu, true);
/*
* CPU must be marked active and online before we signal back to the
* master, because the scheduler needs to see the cpu_online and
* cpu_active bits set.
*/
smp_wmb();
cpu_callin_map[cpu] = 1;
local_irq_enable(); local_irq_enable();
cpu_startup_entry(CPUHP_ONLINE); cpu_startup_entry(CPUHP_ONLINE);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment