Messages in this thread Patch in this message | | | Date | Sat, 14 Aug 2010 13:35:00 -0700 | From | Yinghai Lu <> | Subject | [PATCH -v2 08/10] x86: !find_smp_config path use smp_register_lapic_address |
| |
so fixmap will be setup there.
-v2: fix typo
Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/kernel/apic/apic.c | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c index 3d3d3da..2c9aa63 100644 --- a/arch/x86/kernel/apic/apic.c +++ b/arch/x86/kernel/apic/apic.c @@ -1477,7 +1477,7 @@ static int __init detect_init_APIC(void) return -1; } - mp_lapic_addr = APIC_DEFAULT_PHYS_BASE; + smp_register_lapic_address(APIC_DEFAULT_PHYS_BASE); return 0; } #else @@ -1487,6 +1487,7 @@ static int __init detect_init_APIC(void) static int __init detect_init_APIC(void) { u32 h, l, features; + unsigned long lapic_addr; /* Disabled by kernel option? */ if (disable_apic) @@ -1541,13 +1542,14 @@ static int __init detect_init_APIC(void) return -1; } set_cpu_cap(&boot_cpu_data, X86_FEATURE_APIC); - mp_lapic_addr = APIC_DEFAULT_PHYS_BASE; + lapic_addr = APIC_DEFAULT_PHYS_BASE; /* The BIOS may have set up the APIC at some other address */ rdmsr(MSR_IA32_APICBASE, l, h); if (l & MSR_IA32_APICBASE_ENABLE) - mp_lapic_addr = l & MSR_IA32_APICBASE_BASE; + lapic_addr = l & MSR_IA32_APICBASE_BASE; + smp_register_lapic_address(lapic_addr); pr_info("Found and enabled local APIC!\n"); apic_pm_activate(); -- 1.6.4.2
| |