Prev: [PATCH 01/10] x86: Fix lapic mapping with construct ISA and visws mptable path
Next: [PATCH 05/10] x86, apic: use smp_register_lapic_address in init_apic_mapping
From: Yinghai Lu on 6 Aug 2010 22:20 so fixmap will be setup there. Signed-off-by: Yinghai Lu <yinghai(a)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_addr(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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |