[PATCH 5/8] MIPS: call ->smp_finish() a little late

From: Yong Zhang
Date: Mon May 21 2012 - 02:01:45 EST


From: Yong Zhang <yong.zhang@xxxxxxxxxxxxx>

We have move irq enable to ->smp_finish. Place ->smp_finish() a little
late to prepare for move set_cpu_online() into start_secondary.
And it's not necessary to call cpu_set(cpu, cpu_callin_map) and
synchronise_count_slave() with irq enabled.

Signed-off-by: Yong Zhang <yong.zhang0@xxxxxxxxx>
Acked-by: David Daney <david.daney@xxxxxxxxxx>
---
arch/mips/kernel/smp.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/arch/mips/kernel/smp.c b/arch/mips/kernel/smp.c
index ba9376b..73a268a 100644
--- a/arch/mips/kernel/smp.c
+++ b/arch/mips/kernel/smp.c
@@ -122,13 +122,14 @@ asmlinkage __cpuinit void start_secondary(void)

notify_cpu_starting(cpu);

- mp_ops->smp_finish();
set_cpu_sibling_map(cpu);

cpu_set(cpu, cpu_callin_map);

synchronise_count_slave();

+ mp_ops->smp_finish();
+
cpu_idle();
}

--
1.7.5.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/