您的位置:首页 > 其它

mce-inject使用方法

2016-05-25 10:53 2306 查看
mce-inject功能

mce-inject用于测试mcelog能否正确的获取硬件错误信息,并进行正确解码,mce-inject可以向内核注入指定的错误信息,因此,可以很方便的了解到mcelog的功能是否正常。 这里需要注意的是,当用户利用mce-inject工具向内核注入不可恢复错误(如:fatal)时,会发生死机重新启动等现象,当然,可以通过更改sys文件系统下的tolerate文件来避免此现象的发生。tolerate文件配置

位置:/sys/devices/system/machinecheck/machinecheck*/说明:其中machinecheck*中的*号由CPU的个数所决定的,如果是双核的,则存在machinecheck0和machinecheck1两个目录,对应目录里都有一个tolerate文件,tolerate中存放容忍程度值。 功能:向用户提供一个可选择的出现相应硬件错误时的容忍程度(tolerate),比如:当tolerate的值为1时,出现fatal错误时就会死机,重新启动,并且该错误信息并不被记录;当tolerate的值为3时(注意该值只用于测试),在出现fatal错误时,机器会容忍该错误不予响应,不会出现死机重新启动现象,并且会记录相关错误信息。查看tolerate

以root身份进入相应的目录进行查看即可。如:#cd /sys/devices/system/machinecheck/machinecheck0#cat tolerate查看CPU0的tolerate值。设置tolerate

以root身份进入相应的目录进行修改即可,设置tolerate的方法很多,如:#cd /sys/devices/system/machinecheck/machinecheck0#echo 3 >tolerate数值含义

tolerate的取值可以为0、1、2、3。0: always panic on uncorrected errors, log corrected errors1: panic or SIGBUS on uncorrected errors, log corrected errors2: SIGBUS or log uncorrected errors (if possible), log corrected errors3: never panic or SIGBUS, log all errors (for testing only)mce-inject使用

mce-inject的使用方法也很简单,不过在使用前要现将tolerate的值修改为3,以防止死机重启事件发生,然后,在终端以root身份执行: mce-inject filename ... filename 存放要注入的具体错误类型例如,一个mce-filename文件correct的内容为:
CPU 1 BANK 2STATUS correctedRIP 0x12341234
执行时,只需在终端输入:#mce-inject ./correct即可成功注入,详细的输出结果可以查看/var/log/mcelog文件。当然,你可以自己编写相关的注入脚本。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mce inject mcelog