我在 Linux 中遇到了 mce 硬件错误。我想找出哪个核心崩溃了,但我无法从错误消息中推断出正确的核心:
kernel: [ 1.025641] mce: [Hardware Error]: Machine check events logged
kernel: [ 1.025642] mce: [Hardware Error]: CPU 11: Machine Check: 0 Bank 6: baa0000000020118
kernel: [ 1.025712] mce: [Hardware Error]: TSC 0 MISC d0130fff00000000 SYND 4d000000 IPID 600b000000000
kernel: [ 1.025785] mce: [Hardware Error]: PROCESSOR 2:a20f10 TIME 1634830638 SOCKET 0 APIC 16 microcode a201009
这具体是什么意思,特别是最后一行和第二行?我假设它是第 11 个处理器和第 11 个核心。
这是 AMD Ryzen 9 5950X 16 核处理器。我看到它似乎是 CPU 11。但它还显示 APIC 16 和 PROCESSOR 2:a20f10。
我从 /proc/cpuinfo 中获取了 ID 11 和/或 apic 16 的以下信息:
processor : 11
core id : 11
apicid : 22
[...]
processor : 8
core id : 8
apicid : 16
lstopo/hwloc 显示以下内容:
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Core L#0 │ │ Core L#1 │ │ Core L#2 │ │ Core L#3 │ │ Core L#4 │ │ Core L#5 │ │ Core L#6 │ │ Core L#7 │
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
│ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │
│ │ PU L#0 │ │ │ │ PU L#2 │ │ │ │ PU L#4 │ │ │ │ PU L#6 │ │ │ │ PU L#8 │ │ │ │ PU L#10 │ │ │ │ PU L#12 │ │ │ │ PU L#14 │ │
│ │ P#0 │ │ │ │ P#1 │ │ │ │ P#2 │ │ │ │ P#3 │ │ │ │ P#4 │ │ │ │ P#5 │ │ │ │ P#6 │ │ │ │ P#7 │ │
│ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │
│ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │
│ │ PU L#1 │ │ │ │ PU L#3 │ │ │ │ PU L#5 │ │ │ │ PU L#7 │ │ │ │ PU L#9 │ │ │ │ PU L#11 │ │ │ │ PU L#13 │ │ │ │ PU L#15 │ │
│ │ P#16 │ │ │ │ P#17 │ │ │ │ P#18 │ │ │ │ P#19 │ │ │ │ P#20 │ │ │ │ P#21 │ │ │ │ P#22 │ │ │ │ P#23 │ │
│ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Core L#8 │ │ Core L#9 │ │ Core L#10 │ │ Core L#11 │ │ Core L#12 │ │ Core L#13 │ │ Core L#14 │ │ Core L#15 │
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
│ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │
│ │ PU L#16 │ │ │ │ PU L#18 │ │ │ │ PU L#20 │ │ │ │ PU L#22 │ │ │ │ PU L#24 │ │ │ │ PU L#26 │ │ │ │ PU L#28 │ │ │ │ PU L#30 │ │
│ │ P#8 │ │ │ │ P#9 │ │ │ │ P#10 │ │ │ │ P#11 │ │ │ │ P#12 │ │ │ │ P#13 │ │ │ │ P#14 │ │ │ │ P#15 │ │
│ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │
│ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │ │ ┌─────────┐ │
│ │ PU L#17 │ │ │ │ PU L#19 │ │ │ │ PU L#21 │ │ │ │ PU L#23 │ │ │ │ PU L#25 │ │ │ │ PU L#27 │ │ │ │ PU L#29 │ │ │ │ PU L#31 │ │
│ │ P#24 │ │ │ │ P#25 │ │ │ │ P#26 │ │ │ │ P#27 │ │ │ │ P#28 │ │ │ │ P#29 │ │ │ │ P#30 │ │ │ │ P#31 │ │
│ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │ │ └─────────┘ │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
哪一个是正确的?它是 PU 的 P# 还是 L# 编号?它可能是核心 5 (L#11) 或核心 11 (P#11) 或核心 0 (P#16) 或核心 8 (L#16)?
答案1
仅供参考:在出现更多 mce 错误后,我确信它是物理处理单元编号 (P#)。