Message ID | 1422483604-13203-1-git-send-email-kamal@canonical.com |
---|---|
State | New |
Headers | show |
On Wed, 2015-01-28 at 14:20 -0800, Kamal Mostafa wrote: > This is a note to let you know that I have just added a patch titled > > powerpc: Secondary CPUs must set cpu_callin_map after setting active and online > > to the linux-3.13.y-queue branch of the 3.13.y-ckt extended stable tree > which can be found at: > > http://kernel.ubuntu.com/git?p=ubuntu/linux.git;a=shortlog;h=refs/heads/linux-3.13.y-queue > > This patch is scheduled to be released in version 3.13.11-ckt15. > > If you, or anyone else, feels it should not be added to this tree, please > reply to this email. Please drop this patch. It's been reverted upstream, by me. cheers
On Thu, 2015-01-29 at 11:35 +1100, Michael Ellerman wrote: > On Wed, 2015-01-28 at 14:20 -0800, Kamal Mostafa wrote: > > This is a note to let you know that I have just added a patch titled > > > > powerpc: Secondary CPUs must set cpu_callin_map after setting active and online > > > Please drop this patch. > > It's been reverted upstream, by me. Okay, dropped from 3.13-stable. Thanks Michael. -Kamal
diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c index c1cf4a1..a2802c1 100644 --- a/arch/powerpc/kernel/smp.c +++ b/arch/powerpc/kernel/smp.c @@ -712,7 +712,6 @@ void start_secondary(void *unused) smp_store_cpu_info(cpu); set_dec(tb_ticks_per_jiffy); preempt_disable(); - cpu_callin_map[cpu] = 1; if (smp_ops->setup_cpu) smp_ops->setup_cpu(cpu); @@ -748,6 +747,14 @@ void start_secondary(void *unused) notify_cpu_starting(cpu); 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(); cpu_startup_entry(CPUHP_ONLINE);