x86: cleanup get_smp_config
PATCH 1/1 x86: cleanup get_smp_config
Impact: cleanup
reordering exit path in __get_smp_config
also move two print out to acpi_process_madt
Signed-off-by Yinghai Lu <[email protected]>
--- arch/x86/kernel/acpi/boot.c | 11 +++++++++++ arch/x86/kernel/mpparse.c | 25 +++++++++++-------------- 2 files changed, 22 insertions(+), 14 deletions(-)
arch/x86/kernel/acpi/boot.c +11 -0
@@ -1360,6 +1360,17 @@ static void __init acpi_process_madt(voi disable_acpi(); } } + +/* +* ACPI supports both logical (e.g. Hyper-Threading) and physical +* processors, where MPS only supports physical. +*/ +if (acpi_lapic && acpi_ioapic) +printk (KERN_INFO "Using ACPI (MADT) for SMP configuration " +"information\n" ); +else if (acpi_lapic) +printk (KERN_INFO "Using ACPI for processor (LAPIC) " +"configuration information\n" );#endif return ; }
arch/x86/kernel/mpparse.c +11 -14
@@ -586,26 +586,23 @@ static void __init __get_smp_config(unsi {struct intel_mp_floating *mpf = mpf_found; -if (x86_quirks->mach_get_smp_config) { -if (x86_quirks->mach_get_smp_config (early)) -return ; - } +if (!mpf) +return ; +if (acpi_lapic && early)return ; +/* -* ACPI supports both logical (e.g. Hyper-Threading) and physical -* processors, where MPS only supports physical. +* MPS doesn't support hyperthreading, aka only have +* thread 0 apic id in MPS table */ -if (acpi_lapic && acpi_ioapic) { -printk (KERN_INFO "Using ACPI (MADT) for SMP configuration " -"information\n" ); +if (acpi_lapic && acpi_ioapic)return ; - }else if (acpi_lapic) -printk (KERN_INFO "Using ACPI for processor (LAPIC) " -"configuration information\n" ); -if (!mpf) -return ; +if (x86_quirks->mach_get_smp_config) { +if (x86_quirks->mach_get_smp_config (early)) +return ; + }printk (KERN_INFO "Intel MultiProcessor Specification v1.%d\n" , mpf->mpf_specification);
Ingo Molnar
AppliedQuoted 6 lines · Yinghai Lu
Impact: cleanup
reordering exit path in
__get_smp_config
also move two print out toacpi_process_madt
Quoted 6 lines
Signed-off-by Yinghai Lu <[email protected]>--- arch/x86/kernel/acpi/boot.c | 11 +++++++++++ arch/x86/kernel/mpparse.c | 25 +++++++++++-------------- 2 files changed, 22 insertions(+), 14 deletions(-)
applied to tip/x86/quirks, thanks Yinghai!
Ingo