什么是MCE(Machine Check Error)?

什么是MCE(Machine Check Error)?,第1张

       MCE(Machine Check Exception)是由CPU侦测出来的错误,它错误包含两种主要类型:notice(提示)/warning(警告),和fatal exception(致命性的错误)。Warning(警告)将会在你的系统log下输出一条类似于"Machine Check Event logged"的信息,我们可以通过一些linux的应用程序对这部分log进行详细的信息查看;而fatal MCE(致命的错误)会导致机器停止响应,MCE的详细信息也将会输出到系统的console中。

什么会导致MCE错误出现?

       常见原因有以下几种:

            1. 内存错误或ECC问题

            2. 冷却不足、CPU过热

            3. 系统总线错误

            4. 缓存处理器或硬件错误

如何找出MCE错误对应的含义?

       Linux系统下,如果在Console或者系统log中看到MCE的错误,可以运行mcelog命令从系统内核中读取详细的信息。需要注意的是,一旦运行了mcelog,我们将无法再通过这条命令去查询已经出现的错误,所以最好运行mcelog的时候讲文本输出到文件中以做进一步的分析,参考命令如下:

       root @ localhost:/ root>/ usr / sbin / mcelog>mcelog.ou

       有些系统会定期执行这个 *** 作,并将文件输出到/var/log/mcelog中,因此,如果系统log中发现了MCE信息,但是使用mcelog查询不到任何数据时,可以试着查看/var/log/mcelog文件。

致命的MCE错误导致机器停止响应后我们需要怎么办?

       致命的MCE错误通常都是由硬件错误所引起的,我们通过重启设备重新进入系统后,首先需要查看系统log,一个典型的MCE相关的错误log如下:

       CPU 1: Machine Check Exception:4 Bank 4: f600200137080813

       TSC b0ce27165dd3 ADDR 180ee1b40

这时我们可以通过mcelog去将这条error log的详细信息dump出来,命令如下:

       root@localhost:/root>/usr/sbin/mcelog --ascii <myerror

得到的详细错误信息如下:

       HARDWARE ERROR. This is *NOT* a software problem!

       Please contact your hardware vendor

       CPU 1 4 northbridge TSC b0ce27165dd3

       Northbridge Chipkill ECC error

       Chipkill ECC syndrome = 3700

       bit32 = err cpu0

       bit45 = uncorrected ecc error

       bit57 = processor context corrupt

       bit61 = error uncorrected

       bit62 = error overflow (multiple errors)

       bus error 'local node origin, request didn't time out

       generic read mem transaction

       memory access, level generic'

       STATUS f600200137080813 MCGSTATUS 4

       这表示发生了Uncorrected ECC error,意味着其中一根内存模块出现了问题。

Reference:

1. Machine-check exception, https://en.wikipedia.org/wiki/Machine-check_exception

2. What are Machine Check Exceptions (or MCE)?

http://www.advancedclustering.com/act_kb/what-are-machine-check-exceptions-or-mce/

是否有卡顿或者反应变慢?

目测是CPU有问题,

过热或者散热不好,导致性能下降。

可以尝试清理下灰尘。或者到CPU型号对应的一些论坛求助大神。

Generic CACHE Level-3 Generic Error, 这是CPU有关的。

Herez a post for you man, check it out.

http://ubuntuforums.org/showthread.php?t=1839997

如果你的CPU支持VT虚拟化,则会在flags里面显示vmx,如下所示:

flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm 

flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm

当然光CPU支持VT虚拟化还不够的,还需要在bios里面将VT-X或VT-D选项打开才能真正使用。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7111043.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-01
下一篇 2023-04-01

发表评论

登录后才能评论

评论列表(0条)

保存