From 4ea7a3e00906ef90ded0f61abd9f05b02ec92a09 Mon Sep 17 00:00:00 2001 From: Manfred Spraul Date: Sun, 7 Sep 2008 11:29:58 +0200 Subject: [PATCH] --- yaml --- r: 113486 b: refs/heads/master c: 0cefa5b9b0a61b62442c5d0ca00a304c5896b6e9 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/x86/kernel/smpboot.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 003ab6f4c4a9..319e427dd2f4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 295286a89107c353b9677bc604361c537fd6a1c0 +refs/heads/master: 0cefa5b9b0a61b62442c5d0ca00a304c5896b6e9 diff --git a/trunk/arch/x86/kernel/smpboot.c b/trunk/arch/x86/kernel/smpboot.c index 76b6f50978f7..b700c9a10644 100644 --- a/trunk/arch/x86/kernel/smpboot.c +++ b/trunk/arch/x86/kernel/smpboot.c @@ -334,14 +334,17 @@ static void __cpuinit start_secondary(void *unused) * does not change while we are assigning vectors to cpus. Holding * this lock ensures we don't half assign or remove an irq from a cpu. */ - ipi_call_lock_irq(); + ipi_call_lock(); lock_vector_lock(); __setup_vector_irq(smp_processor_id()); cpu_set(smp_processor_id(), cpu_online_map); unlock_vector_lock(); - ipi_call_unlock_irq(); + ipi_call_unlock(); per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE; + /* enable local interrupts */ + local_irq_enable(); + setup_secondary_clock(); wmb();