linux/arch/x86/kernel/apic
Thomas Gleixner d10a904435 x86/apic: Consolidate boot_cpu_physical_apicid initialization sites
boot_cpu_physical_apicid is written in random places and in the last
consequence filled with the APIC ID read from the local APIC. That causes
it to have inconsistent state when the MPTABLE is broken. As a consequence
tons of moronic checks are sprinkled all over the place.

Consolidate the code and read it exactly once when either X2APIC mode is
detected early or when the APIC mapping is established.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Michael Kelley <mikelley@microsoft.com>
Tested-by: Sohil Mehta <sohil.mehta@intel.com>
Tested-by: Juergen Gross <jgross@suse.com> # Xen PV (dom0 and unpriv. guest)
2023-08-09 11:58:18 -07:00
..
apic_common.c x86/apic: Remove pointless x86_bios_cpu_apicid 2023-08-09 11:58:17 -07:00
apic_flat_64.c x86/apic: Nuke unused apic::inquire_remote_apic() 2023-08-09 11:58:18 -07:00
apic_noop.c x86/apic: Nuke unused apic::inquire_remote_apic() 2023-08-09 11:58:18 -07:00
apic_numachip.c x86/apic: Nuke unused apic::inquire_remote_apic() 2023-08-09 11:58:18 -07:00
apic.c x86/apic: Consolidate boot_cpu_physical_apicid initialization sites 2023-08-09 11:58:18 -07:00
bigsmp_32.c x86/apic: Nuke unused apic::inquire_remote_apic() 2023-08-09 11:58:18 -07:00
hw_nmi.c locking/seqlock, headers: Untangle the spaghetti monster 2020-08-06 16:13:13 +02:00
io_apic.c x86/apic: Get rid of hard_smp_processor_id() 2023-08-09 11:58:17 -07:00
ipi.c x86/apic: Get rid of hard_smp_processor_id() 2023-08-09 11:58:17 -07:00
local.h x86/headers: Remove APIC headers from <asm/smp.h> 2020-08-06 16:13:09 +02:00
Makefile x86/PCI: Remove unused HyperTransport interrupt support 2017-11-23 20:18:18 +01:00
msi.c x86/apic: Rename disable_apic 2023-08-09 11:58:16 -07:00
probe_32.c x86/apic: Nuke unused apic::inquire_remote_apic() 2023-08-09 11:58:18 -07:00
probe_64.c x86/apic: Remove pointless x86_bios_cpu_apicid 2023-08-09 11:58:17 -07:00
vector.c x86/apic: Get rid of hard_smp_processor_id() 2023-08-09 11:58:17 -07:00
x2apic_cluster.c x86/apic: Nuke unused apic::inquire_remote_apic() 2023-08-09 11:58:18 -07:00
x2apic_phys.c x86/apic: Nuke unused apic::inquire_remote_apic() 2023-08-09 11:58:18 -07:00
x2apic_uv_x.c x86/apic: Nuke unused apic::inquire_remote_apic() 2023-08-09 11:58:18 -07:00