From d682c9b7d632fe20c0233291d4a611a0991ca755 Mon Sep 17 00:00:00 2001 From: Glauber de Oliveira Costa Date: Wed, 19 Mar 2008 14:26:10 -0300 Subject: [PATCH] --- yaml --- r: 88855 b: refs/heads/master c: 9f3734f631267d2f36008833b62670ca342ac000 h: refs/heads/master i: 88853: d959b703f637ce734b28c5e894a647d222bf7fdc 88851: 2ae215ae1c2aad98a2583008adc50f316e7237df 88847: 692047902e71e3bd9a8e1dbaf57d5adb91c38246 v: v3 --- [refs] | 2 +- trunk/arch/x86/kernel/smpboot_32.c | 2 ++ trunk/arch/x86/kernel/smpboot_64.c | 4 ++-- trunk/include/asm-x86/mach-default/smpboot_hooks.h | 5 +++++ trunk/include/asm-x86/mach-visws/smpboot_hooks.h | 4 ++++ 5 files changed, 14 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index bd043db60eda..023c833d6a5c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 771263d31114adb5e234364a58280c876c2ed182 +refs/heads/master: 9f3734f631267d2f36008833b62670ca342ac000 diff --git a/trunk/arch/x86/kernel/smpboot_32.c b/trunk/arch/x86/kernel/smpboot_32.c index ae23b603978c..5a0f57f35191 100644 --- a/trunk/arch/x86/kernel/smpboot_32.c +++ b/trunk/arch/x86/kernel/smpboot_32.c @@ -155,6 +155,7 @@ static int __init smp_sanity_check(unsigned max_cpus) printk(KERN_ERR "BIOS bug, local APIC #%d not detected!...\n", boot_cpu_physical_apicid); printk(KERN_ERR "... forcing use of dummy APIC emulation. (tell your hw vendor)\n"); + smpboot_clear_io_apic(); return -1; } @@ -173,6 +174,7 @@ static int __init smp_sanity_check(unsigned max_cpus) setup_local_APIC(); end_local_APIC_setup(); } + smpboot_clear_io_apic(); return -1; } return 0; diff --git a/trunk/arch/x86/kernel/smpboot_64.c b/trunk/arch/x86/kernel/smpboot_64.c index c66fb15b0131..775244545ffa 100644 --- a/trunk/arch/x86/kernel/smpboot_64.c +++ b/trunk/arch/x86/kernel/smpboot_64.c @@ -134,7 +134,7 @@ static int __init smp_sanity_check(unsigned max_cpus) printk(KERN_ERR "BIOS bug, local APIC #%d not detected!...\n", boot_cpu_physical_apicid); printk(KERN_ERR "... forcing use of dummy APIC emulation. (tell your hw vendor)\n"); - nr_ioapics = 0; + smpboot_clear_io_apic(); return -1; } @@ -145,7 +145,7 @@ static int __init smp_sanity_check(unsigned max_cpus) */ if (!max_cpus) { printk(KERN_INFO "SMP mode deactivated, forcing use of dummy APIC emulation.\n"); - nr_ioapics = 0; + smpboot_clear_io_apic(); return -1; } diff --git a/trunk/include/asm-x86/mach-default/smpboot_hooks.h b/trunk/include/asm-x86/mach-default/smpboot_hooks.h index 8e1c6c06d057..3ff2c5bff93a 100644 --- a/trunk/include/asm-x86/mach-default/smpboot_hooks.h +++ b/trunk/include/asm-x86/mach-default/smpboot_hooks.h @@ -44,3 +44,8 @@ static inline void smpboot_setup_io_apic(void) else nr_ioapics = 0; } + +static inline void smpboot_clear_io_apic(void) +{ + nr_ioapics = 0; +} diff --git a/trunk/include/asm-x86/mach-visws/smpboot_hooks.h b/trunk/include/asm-x86/mach-visws/smpboot_hooks.h index d926471fa359..c9b83e395a2e 100644 --- a/trunk/include/asm-x86/mach-visws/smpboot_hooks.h +++ b/trunk/include/asm-x86/mach-visws/smpboot_hooks.h @@ -22,3 +22,7 @@ static inline void smpboot_restore_warm_reset_vector(void) static inline void smpboot_setup_io_apic(void) { } + +static inline void smpboot_clear_io_apic(void) +{ +}