RE: [PATCH hyperv-next 0/2] arch/x86, x86/hyperv: Few fixes for the AP startup
From: Michael Kelley <hidden>
Date: 2025-05-08 04:23:03
Also in:
linux-acpi, lkml
From: Roman Kisel <redacted> Sent: Wednesday, May 7, 2025 11:22 AM
This patchset combines two patches that depend on each other and were not applying
cleanly:
1. Fix APIC ID and VP index confusion in hv_snp_boot_ap():
https://lore.kernel.org/linux-hyperv/20250430204720.108962-1-romank@linux.microsoft.com/ (local)
2. Provide the CPU number in the wakeup AP callback:
https://lore.kernel.org/linux-hyperv/20250430204720.108962-1-romank@linux.microsoft.com/ (local)
I rebased the patches on top of the latest hyperv-next tree and updated the second patch
that broke the linux-next build. That fix that, I made one non-functional change:
updated the signature of numachip_wakeup_secondary() to match the parameter list of
wakeup_secondary_cpu().
Roman Kisel (2):
x86/hyperv: Fix APIC ID and VP index confusion in hv_snp_boot_ap()
arch/x86: Provide the CPU number in the wakeup AP callbackI think this works. It's unfortunate that Patch 1 adds 11 lines of code/comments that Patch 2 then deletes, which seems like undesirable churn. I was expecting adding the "cpu" parameter to come first, which then makes fixing the hv_snp_boot_ap() problem more straightforward. But looking more closely, hv_snp_boot_ap() already has a parameter erroneously named "cpu", so adding the correct "cpu" parameter isn't transparent. Hence the order you've chosen is probably the best resolution for a messy situation. :-) Michael
arch/x86/coco/sev/core.c | 13 ++----- arch/x86/hyperv/hv_init.c | 33 +++++++++++++++++ arch/x86/hyperv/hv_vtl.c | 54 ++++------------------------ arch/x86/hyperv/ivm.c | 11 ++++-- arch/x86/include/asm/apic.h | 8 ++--- arch/x86/include/asm/mshyperv.h | 7 ++-- arch/x86/kernel/acpi/madt_wakeup.c | 2 +- arch/x86/kernel/apic/apic_noop.c | 8 ++++- arch/x86/kernel/apic/apic_numachip.c | 2 +- arch/x86/kernel/apic/x2apic_uv_x.c | 2 +- arch/x86/kernel/smpboot.c | 10 +++--- include/hyperv/hvgdk_mini.h | 2 +- 12 files changed, 76 insertions(+), 76 deletions(-) base-commit: 9b0844d87b1407681b78130429f798beb366f43f -- 2.43.0