On 22/05/2025 10:10 am, Jan Beulich wrote: > On 22.05.2025 09:54, Roger Pau Monne wrote: >> Print the CPU and APIC ID that fails to respond to the init sequence, or >> that didn't manage to reach the "callin" state. Expand a bit the printed >> error messages. Otherwise the "Not responding." message is not easy to >> understand by users. >> >> Reported-by: Andrew Cooper <andrew.coop...@citrix.com> >> Signed-off-by: Roger Pau Monné <roger....@citrix.com> >> --- >> Changes since v1: >> - Also print APIC ID. >> --- >> xen/arch/x86/smpboot.c | 6 ++++-- >> 1 file changed, 4 insertions(+), 2 deletions(-) >> >> diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c >> index 0189d6c332a4..dbc2f2f1d411 100644 >> --- a/xen/arch/x86/smpboot.c >> +++ b/xen/arch/x86/smpboot.c >> @@ -618,10 +618,12 @@ static int do_boot_cpu(int apicid, int cpu) >> smp_mb(); >> if ( bootsym(trampoline_cpu_started) == 0xA5 ) >> /* trampoline started but...? */ >> - printk("Stuck ??\n"); >> + printk("CPU%u/APICID%u: Didn't finish startup sequence\n", >> + cpu, apicid); >> else >> /* trampoline code not run */ >> - printk("Not responding.\n"); >> + printk("CPU%u/APICID%u: Not responding to startup\n", >> + cpu, apicid); >> } >> } >> > Elsewhere I think we print AIC IDs in hex; may be better to do so here, too. > That may then want some text re-arrangement though, e.g. > > "CPU%u: APICID %#x not responding to startup\n" > > Thoughts?
Definitely hex. Elsewhere APIC_ID always has an underscore. I'd suggest: "APIC_ID %#x (CPU%u) didn't respond to SIPI\n" The APIC_ID is the critical detail, and the CPU number is fairly incidental. Also as we're changing things, lets not retain the STARTUP name seeing as it only exists on pre-Pentium APICs. SIPI is what we use these days. ~Andrew