diff options
| author | Thomas Gleixner <tglx@linutronix.de> | 2024-02-13 22:05:53 +0100 |
|---|---|---|
| committer | Thomas Gleixner <tglx@linutronix.de> | 2024-02-15 22:07:43 +0100 |
| commit | 7c0edad3643f4493c4dafa6f5dfcfb1a86432156 (patch) | |
| tree | b6e88ee7e910a8933a16cd10e850c04e973e7743 /arch/x86/include/asm/cpu.h | |
| parent | x86/cpu/topology: Sanitize the APIC admission logic (diff) | |
| download | linux-7c0edad3643f4493c4dafa6f5dfcfb1a86432156.tar.gz linux-7c0edad3643f4493c4dafa6f5dfcfb1a86432156.zip | |
x86/cpu/topology: Rework possible CPU management
Managing possible CPUs is an unreadable and uncomprehensible maze. Aside of
that it's backwards because it applies command line limits after
registering all APICs.
Rewrite it so that it:
- Applies the command line limits upfront so that only the allowed amount
of APIC IDs can be registered.
- Applies eventual late restrictions in an understandable way
- Uses simple min_t() calculations which are trivial to follow.
- Provides a separate function for resetting to UP mode late in the
bringup process.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Michael Kelley <mhklinux@outlook.com>
Tested-by: Sohil Mehta <sohil.mehta@intel.com>
Link: https://lore.kernel.org/r/20240213210252.290098853@linutronix.de
Diffstat (limited to 'arch/x86/include/asm/cpu.h')
| -rw-r--r-- | arch/x86/include/asm/cpu.h | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/arch/x86/include/asm/cpu.h b/arch/x86/include/asm/cpu.h index f8f9a9b79395..aa30fd8cad7f 100644 --- a/arch/x86/include/asm/cpu.h +++ b/arch/x86/include/asm/cpu.h @@ -9,18 +9,10 @@ #include <linux/percpu.h> #include <asm/ibt.h> -#ifdef CONFIG_SMP - -extern void prefill_possible_map(void); - -#else /* CONFIG_SMP */ - -static inline void prefill_possible_map(void) {} - +#ifndef CONFIG_SMP #define cpu_physical_id(cpu) boot_cpu_physical_apicid #define cpu_acpi_id(cpu) 0 #define safe_smp_processor_id() 0 - #endif /* CONFIG_SMP */ #ifdef CONFIG_HOTPLUG_CPU |
