Changelog since: v1: * s/count_cpu/apic_id_init/ * merge handle_x2apic() into apic_id_init() RFC: * move out max-cpus check out of mptable_setup() * factor out CPU counting/apic ID detection in separate function * return back accidentially deleted debug message with APIC ID * drop unused code in smp_setup()
According to SDM, if CPUs have APIC ID more than 254 firmware should pass control to OS in x2APIC mode. This series adds x2APIC bootstrap initialization.
QEMU side of x2APIC support: https://lists.gnu.org/archive/html/qemu-devel/2016-05/msg01094.html
Igor Mammedov (3): paravirt: disable legacy bios tables in case of more than 255 CPUs support booting with more than 255 CPUs cleanup smp_setup()
Kevin O'Connor (1): smp: refactor present CPU APIC ID detection and counting
src/fw/paravirt.c | 6 ++++-- src/fw/smp.c | 57 ++++++++++++++++++++++++++++++++++++------------------- src/x86.h | 1 + 3 files changed, 42 insertions(+), 22 deletions(-)