欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

CPU0: Temperature above threshold的解决

程序员文章站 2022-06-13 16:04:16
CPU0: Temperature above threshold的解决公司最近又一台机老报这个错误:Message from syslogd@oddscollector7 at Thu Jan 10 05:42:08 2008 ...oddscollector7 kernel: CPU0: Temperature above thresholdMessage ... 10-09-08...

公司最近又一台机老报这个错误:
 message from syslogd@oddscollector7 at thu jan 10 05:42:08 2008 ...
oddscollector7 kernel: cpu0: temperature above threshold

message from syslogd@oddscollector7 at thu jan 10 05:42:08 2008 ...
oddscollector7 kernel: cpu1: temperature above threshold


message from syslogd@oddscollector7 at thu jan 10 05:42:08 2008 ...
oddscollector7 kernel: cpu1: running in modulated clock mode


message from syslogd@oddscollector7 at thu jan 10 05:42:08 2008 ...
oddscollector7 kernel: cpu0: running in modulated clock mode

据说是2.6 内核的温度阀值过低造成
屏蔽掉这个提示的办法:
修改/etc/syslog.conf,注释掉 *.emerg 这一行,然后:
/etc/init.d/syslogd restart
p4处理器的thermal monitoring打印的信息.(你的是p4吧?), 这个信息
说明你的cpu核的温度已经超出范围. (你从哪里看到你的温度是正常的?)
注:amd的cpu也一样(我的机器是amd双核4000/+)
p4处理器内部的thermal monitoring设置了技术来检测是否p4 core温度是否
超过一个阀值(trip temperature, 厂家定义), 这个温度传感器检测到的温度
若超过的trip temperature(也即是打印信息中的那个threashold阀值), 就产生
一个中断.

linux kernel定义了这个中断句柄, 即打印下面的这些信息.

若不想看到这个信息, 可以重编译内核禁用config_x86_mce_p4thermal选项,
即make menuconfig中的
[processor type and features]-> [check for p4 thermal throttling interrupt.]
这个选项去除.

若不想编译内核, 就在启动时增加命令行选项nomce, 但这样做就禁用了
所有p4的machine check能力(包括cpu热监视能力) cat /proc/cpuinfo 然后在flags那一项可以看到是否支持mce(大部分都支持)
. 用root登陆。
2. 编辑启动配置文件:/boot/grub/menu.lst
3. 添加“nomce”启动选项

例如:
title red hat enterprise linux as (2.6.9-xx.elsmp)
root (hd0,0)
kernel /vmlinuz-2.6.9-xx.elsmp ro root=/dev/volgroup00/logvol00 rhgb quiet nomce

最后, 不管你怎么不愿意看到这些信息, 都无法否定你的cpu已经过热, 你的
cpu时钟的触发(上升下降研)频率已经被降低, 你的系统性能应该已经降低了.
最治本的方法是再修理你的cpu啊, 风扇啊, 主板啊.
如果bios中有相关温度报警的选项可以关掉.