From a6b9f4450f0dc15871d2fab4294f09cae24d90e2 Mon Sep 17 00:00:00 2001 From: Glauber Costa Date: Wed, 28 May 2008 13:38:28 -0300 Subject: [PATCH] --- yaml --- r: 99854 b: refs/heads/master c: b5841765a2e735a38612c4e4a82170c33d701b3c h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/x86/kernel/apic_64.c | 10 ++++++++++ trunk/arch/x86/kernel/smpboot.c | 5 +---- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 0c374d1f7d2c..03b142d30825 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3fde690011a84e19f98f77bfaa349b2119ddd2d2 +refs/heads/master: b5841765a2e735a38612c4e4a82170c33d701b3c diff --git a/trunk/arch/x86/kernel/apic_64.c b/trunk/arch/x86/kernel/apic_64.c index d9d663ffa641..5279dc924381 100644 --- a/trunk/arch/x86/kernel/apic_64.c +++ b/trunk/arch/x86/kernel/apic_64.c @@ -918,6 +918,8 @@ int __init APIC_init_uniprocessor(void) verify_local_APIC(); + connect_bsp_APIC(); + physid_set_mask_of_physid(boot_cpu_physical_apicid, &phys_cpu_present_map); apic_write(APIC_ID, SET_APIC_ID(boot_cpu_physical_apicid)); @@ -999,6 +1001,14 @@ asmlinkage void smp_error_interrupt(void) irq_exit(); } +/** + * * connect_bsp_APIC - attach the APIC to the interrupt system + * */ +void __init connect_bsp_APIC(void) +{ + enable_apic_mode(); +} + void disconnect_bsp_APIC(int virt_wire_setup) { /* Go back to Virtual Wire compatibility mode */ diff --git a/trunk/arch/x86/kernel/smpboot.c b/trunk/arch/x86/kernel/smpboot.c index e09f3124738a..a569f06d789e 100644 --- a/trunk/arch/x86/kernel/smpboot.c +++ b/trunk/arch/x86/kernel/smpboot.c @@ -1116,9 +1116,7 @@ static int __init smp_sanity_check(unsigned max_cpus) localise_nmi_watchdog(); -#ifdef CONFIG_X86_32 connect_bsp_APIC(); -#endif setup_local_APIC(); end_local_APIC_setup(); return -1; @@ -1173,9 +1171,8 @@ void __init native_smp_prepare_cpus(unsigned int max_cpus) } preempt_enable(); -#ifdef CONFIG_X86_32 connect_bsp_APIC(); -#endif + /* * Switch from PIC to APIC mode. */