From 07023df15ed7c014bd40b71661c4c5ae6923163c Mon Sep 17 00:00:00 2001 From: Yinghai Lu Date: Sun, 29 Jun 2008 00:06:37 -0700 Subject: [PATCH] --- yaml --- r: 99979 b: refs/heads/master c: 914bebfad42c417b84bda8920a3073d236007fde h: refs/heads/master i: 99977: bdff08aae68020bdad4f1be6fc7ac5da8afdd1ee 99975: a622fb9c2191ede7a3d7a17d8031f9de5bab8b8e v: v3 --- [refs] | 2 +- trunk/arch/x86/kernel/apic_32.c | 15 ++++++++------- trunk/arch/x86/kernel/setup.c | 4 ---- trunk/include/asm-x86/apic.h | 4 ---- 4 files changed, 9 insertions(+), 16 deletions(-) diff --git a/[refs] b/[refs] index 190a73f66dc3..348e13456b7e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a04ad82d0bff4bb564f290eb50982e02458592d9 +refs/heads/master: 914bebfad42c417b84bda8920a3073d236007fde diff --git a/trunk/arch/x86/kernel/apic_32.c b/trunk/arch/x86/kernel/apic_32.c index 8fbad8ed0ebe..6dea8306d8c0 100644 --- a/trunk/arch/x86/kernel/apic_32.c +++ b/trunk/arch/x86/kernel/apic_32.c @@ -55,9 +55,10 @@ unsigned long mp_lapic_addr; /* * Knob to control our willingness to enable the local APIC. * - * -1=force-disable, +1=force-enable + * +1=force-enable */ -int enable_local_apic; +static int force_enable_local_apic; +int disable_apic; /* Local APIC timer verification ok */ static int local_apic_timer_verify_ok; @@ -1099,7 +1100,7 @@ static int __init detect_init_APIC(void) u32 h, l, features; /* Disabled by kernel option? */ - if (enable_local_apic < 0) + if (disable_apic) return -1; switch (boot_cpu_data.x86_vendor) { @@ -1122,7 +1123,7 @@ static int __init detect_init_APIC(void) * Over-ride BIOS and try to enable the local APIC only if * "lapic" specified. */ - if (enable_local_apic <= 0) { + if (!force_enable_local_apic) { printk(KERN_INFO "Local APIC disabled by BIOS -- " "you can enable it with \"lapic\"\n"); return -1; @@ -1208,7 +1209,7 @@ int apic_version[MAX_APICS]; int __init APIC_init_uniprocessor(void) { - if (enable_local_apic < 0) + if (disable_apic) clear_cpu_cap(&boot_cpu_data, X86_FEATURE_APIC); if (!smp_found_config && !cpu_has_apic) @@ -1682,14 +1683,14 @@ static void apic_pm_activate(void) { } */ static int __init parse_lapic(char *arg) { - enable_local_apic = 1; + force_enable_local_apic = 1; return 0; } early_param("lapic", parse_lapic); static int __init parse_nolapic(char *arg) { - enable_local_apic = -1; + disable_apic = 1; clear_cpu_cap(&boot_cpu_data, X86_FEATURE_APIC); return 0; } diff --git a/trunk/arch/x86/kernel/setup.c b/trunk/arch/x86/kernel/setup.c index 4716460607b4..fb318edd8bc6 100644 --- a/trunk/arch/x86/kernel/setup.c +++ b/trunk/arch/x86/kernel/setup.c @@ -598,11 +598,7 @@ void __init setup_arch(char **cmdline_p) if (acpi_mps_check()) { #ifdef CONFIG_X86_LOCAL_APIC -#ifdef CONFIG_X86_32 - enable_local_apic = -1; -#else disable_apic = 1; -#endif #endif clear_cpu_cap(&boot_cpu_data, X86_FEATURE_APIC); } diff --git a/trunk/include/asm-x86/apic.h b/trunk/include/asm-x86/apic.h index 6ae6ae68d4cd..a29807737d3d 100644 --- a/trunk/include/asm-x86/apic.h +++ b/trunk/include/asm-x86/apic.h @@ -40,11 +40,7 @@ extern int local_apic_timer_c2_ok; extern int ioapic_force; -#ifdef CONFIG_X86_64 extern int disable_apic; -#else -extern int enable_local_apic; -#endif /* * Basic functions accessing APICs. */