aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYong Zhang <[email protected]>2012-07-19 09:13:53 +0200
committerRalf Baechle <[email protected]>2012-07-19 11:23:44 +0200
commit5309bdac7029c7d8659d6653761f3402e17ed1ab (patch)
tree84699d143aa3320901b1b38c82833a993b48ee47
parent263afbdd1cdd49338c118a3064acee01c69bb501 (diff)
MIPS: call ->smp_finish() a little late
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 <[email protected]> Cc: Sergei Shtylyov <[email protected]> Cc: David Daney <[email protected]> Acked-by: David Daney <[email protected]> Patchwork: https://patchwork.linux-mips.org/patch/3850/ Signed-off-by: Ralf Baechle <[email protected]>
-rw-r--r--arch/mips/kernel/smp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/mips/kernel/smp.c b/arch/mips/kernel/smp.c
index 48650c818040..b181bbf410de 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();
}