If linux encounters machine check exception it logs it to a syslog/debug log.
mcelog utility can be used to debug it:
git clone github.com/andikleen/mcelog.git↗
make
It can either load it from logs or parse it from stdin like so (CPU is 0x6e8) model fam is specified:
./mcelog --intel-cpu 6,14 --ascii mcelog: Cannot open /dev/mem for DMI decoding: Permission denied Jan 11 14:29:53 yonah kernel: [ 0.161089] mce: [Hardware Error]: CPU 0: Machine Check: 0 Bank 0: f200084000000800Jan 11 14:29:53 yonah kernel: [ 0.161089] mce: [Hardware Error]: Hardware event. This is not a software error. CPU 0 BANK 0 MCG status: MCi status: Error overflow Uncorrected error Error enabled Processor context corrupt MCA: BUS error: -1 0 Level-0 Local-CPU-originated-request Generic Memory-access Request-did-not-timeout BQ_DCU_READ_TYPE BQ_ERR_HARD_TYPE BQ_ERR_HARD_TYPE timeout BINIT (ROB timeout). No micro-instruction retired for some time failure that caused IERR STATUS f200084000000800 MCGSTATUS 0
OR:
./mcelog --intel-cpu 6,14 --ascii mcelog: Cannot open /dev/mem for DMI decoding: Permission denied CPU 0: Machine Check: 0 Bank 4: b200000000040151 Hardware event. This is not a software error. CPU 0 BANK 4 MCG status: MCi status: Uncorrected error Error enabled Processor context corrupt MCA: Instruction CACHE Level-2 Instruction-Fetch Error STATUS b200000000040151 MCGSTATUS 0
This project is an independent, unofficial work based on publicly available information and reverse-engineering research, and is not affiliated with, endorsed by, sponsored by, or associated with Intel Corporation or its affiliates. It is provided "as is", without warranty of any kind. The author assumes no responsibility or liability for any use, misuse, damage, data loss, hardware failure, or other consequences arising from its use. Intel, Pentium, Core and related trademarks are the property of their respective owners and are used solely for identification and informational purposes.