|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [BUG] Xen BUG at mce_amd.c:100 (mc_ec2type) on Zen 3; host left wedged, no reboot
Am 02.11.2026 um 13:54 schrieb Jan Beulich: On 31.10.2026 14:44, Peter Deggendorfer wrote:As requested, I added a printk to mcheck_mca_logout(), and the BUG() in mc_ec2type() is still replaced. These are the only changes against the Debian package: --- a/xen/arch/x86/cpu/mcheck/mce_amd.c +++ b/xen/arch/x86/cpu/mcheck/mce_amd.c @@ -97,7 +97,7 @@ if ( errorcode & MC_EC_TLB_TYPE ) return MC_EC_TLB_TYPE; /* Unreached */ - BUG(); + printk(XENLOG_WARNING "MCE: unknown AMD error code %#x\n", errorcode); return 0; } --- a/xen/arch/x86/cpu/mcheck/mce.c +++ b/xen/arch/x86/cpu/mcheck/mce.c @@ -304,3 +304,6 @@ if ( !(status & MCi_STATUS_VAL) ) continue; /* this bank has no valid telemetry */ + if ( who == MCA_POLLER ) + printk(XENLOG_WARNING "MCE: CPU%u bank %d status %#"PRIx64"\n", + smp_processor_id(), i, status); We now have some data points: (XEN) [2026-10-27 13:42:10.588] MCE: CPU2 bank 23 status 0x830824448b48ffff (XEN) [2026-10-27 18:19:55.593] MCE: CPU2 bank 23 status 0xffffffffffffffff (XEN) [2026-10-27 22:11:10.596] MCE: CPU2 bank 17 status 0xffff832036a40048 (XEN) [2026-10-27 22:11:10.596] MCE: unknown AMD error code 0x48 (XEN) [2026-10-28 00:33:55.597] MCE: CPU2 bank 10 status 0xffff82d04022a8af (XEN) [2026-10-28 05:26:40.599] MCE: CPU2 bank 17 status 0xffff82d0402408e3 (XEN) [2026-10-29 23:17:25.618] MCE: CPU2 bank 17 status 0xffff82d04022a8af (XEN) [2026-10-30 03:25:10.622] MCE: CPU2 bank 23 status 0xffffffffffffffff (XEN) [2026-10-30 10:05:55.625] MCE: CPU2 bank 10 status 0xffffffffffffffff (XEN) [2026-10-31 00:58:10.625] MCE: CPU2 bank 17 status 0xffff888100b872e8 (XEN) [2026-10-31 00:58:10.625] MCE: unknown AMD error code 0x72e8 (XEN) [2026-10-31 04:17:55.632] MCE: CPU2 bank 23 status 0xffff831f00006000 (XEN) [2026-10-31 04:17:55.632] MCE: unknown AMD error code 0x6000 Only 3 of these would have hit the BUG(); the others have UC clear or an error code that happens to contain a type bit. The values look like pointers rather than status registers: ffff82d040...... Xen text/data -- the prefix of every RIP in my earlier panic dumps ffff831f........ / ffff8320........ same range as rsp in those dumps (e.g. ffff831fe6b3fc38, ffff832036a87c38) ffff888100b872e8 dom0 Linux range?Plus the very first of the entries above is a pointer value rotated by 16 bits.Two things that make me doubt these are real status values at all: 0xffff82d04022a8af appears twice, 47 hours apart, for two different banks (10 and 17). And all timestamps are congruent mod 15 seconds, i.e. this is the poller hitting it on a small fraction of passes.There's no question that the values are garbage. We just need to find out why that is. As we have to explore all (remote) possibilities, first of all - you don't play any games involving the XEN_MC_msrinject hypercall, do you? For the immediate purpose here, and since ... No, I never used XEN_MC_msrinject hypercall on this host; it's a plain Debian trixie installation. I don't know where the read goes wrong. Since 2026-11-03 the host runs Xen 4.20.5-pre (Debian 4.20.4+39-gf1e1321c87-0+deb13u1) with your two debugging hunks (intpose_lookup() removed from mca_rdmsr(), re-read in the poller) and your "x86/MCE: reduce redundant code" series (both patches). In 7 days: (XEN) [2026-11-03 13:54:50.378] MCE: CPU2 bank 25 status 0x8000001fe67e1163 (XEN) [2026-11-03 13:54:50.378] MCE: CPU2 bank 25 -> 0 (XEN) [2026-11-03 14:52:20.360] MCE: CPU2 bank 7 status 0x8000000080000000 (XEN) [2026-11-03 14:52:20.360] MCE: CPU2 bank 7 -> 0 (XEN) [2026-11-03 20:01:20.264] MCE: CPU2 bank 25 status 0xffff82d04022a8ef (XEN) [2026-11-03 20:01:20.264] MCE: CPU2 bank 25 -> 0 (XEN) [2026-11-05 14:31:19.276] MCE: CPU2 bank 25 status 0x8000001fe67e1163 (XEN) [2026-11-05 14:31:19.276] MCE: CPU2 bank 25 -> 0 (XEN) [2026-11-06 11:27:18.812] MCE: CPU2 bank 24 status 0xffff832036a754c0 (XEN) [2026-11-06 11:27:18.812] MCE: CPU2 bank 24 -> 0 (XEN) [2026-11-06 18:26:48.671] MCE: CPU2 bank 7 status 0xffff831fe6b154c0 (XEN) [2026-11-06 18:26:48.671] MCE: CPU2 bank 7 -> 0 (XEN) [2026-11-07 06:31:48.345] MCE: CPU2 bank 16 status 0xffff8313f11d2010 (XEN) [2026-11-07 06:31:48.345] MCE: CPU2 bank 16 -> 0 (XEN) [2026-11-07 09:41:48.243] MCE: CPU2 bank 16 status 0xffffffffffffffff (XEN) [2026-11-07 09:41:48.243] MCE: CPU2 bank 16 -> 0 (XEN) [2026-11-07 21:32:17.875] MCE: CPU2 bank 7 status 0xffff83203a5ea2d0 (XEN) [2026-11-07 21:32:17.875] MCE: CPU2 bank 7 -> 0 (XEN) [2026-11-08 06:25:47.633] MCE: CPU2 bank 16 status 0xffffffffffffffff (XEN) [2026-11-08 06:25:47.633] MCE: CPU2 bank 16 -> 0 (XEN) [2026-11-08 15:11:17.390] MCE: CPU2 bank 16 status 0xffff82d040588f80 (XEN) [2026-11-08 15:11:17.390] MCE: CPU2 bank 16 -> 0 (XEN) [2026-11-09 07:29:46.980] MCE: CPU2 bank 16 status 0xffffffffffffffff (XEN) [2026-11-09 07:29:46.980] MCE: CPU2 bank 16 -> 0 (XEN) [2026-11-09 10:49:46.880] MCE: CPU2 bank 7 status 0xffffffffffffffff (XEN) [2026-11-09 10:49:46.880] MCE: CPU2 bank 7 -> 0 (XEN) [2026-11-09 13:09:16.822] MCE: CPU2 bank 7 status 0xffffffffffffffff (XEN) [2026-11-09 13:09:16.822] MCE: CPU2 bank 7 -> 0 - All on CPU2. The re-read returned 0 in every case (14/14), so no bank was processed and /dev/mcelog stayed empty. - Against this build's xen-syms.map: 0xffff82d04022a8ef is timer.c#add_entry+0x4f, 0xffff82d040588f80 is irq_stat. Peter
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |