内核过热导致崩溃?

内核过热导致崩溃?

我认为我的 CPU 过热,导致内核崩溃,机器重新启动。这是一台 Intel 3612QE。出于测试目的,我已将 cpufrequtils scaling_governor 更改为 ondemand、conservative 和 powersave。在 ondemand 下,内核崩溃发生在 70 度左右,计算机关闭;在 conservative 下,内核崩溃不会发生,但 CPU 处于 50-60 度范围内;powersave 是最凉爽的,正如预期的那样,CPU 从未超过 1.2 GHz,徘徊在 50 度左右。

我还测试了关闭 turbomode(在 BIOS 设置中),这样 CPU 就不会超过 2.1 Ghz。这通常也可以防止内核崩溃。

问题是,我还没有看到温度高于 70 度左右,但内核恐慌仍然会出现。难道它不应该是 87 度吗,这是“传感器”告诉我的?

我认为 CPU 散热器并不理想,但这并不是基于事实,只是根据我刚才描述的测试得出的结论。这是一个定制散热器。

有没有办法在热行程进入内核之前捕获它?还有,有没有办法确定内核崩溃是由于过热引起的?到目前为止,我无法捕获内核崩溃的输出,所以我只能瞥见它。

编辑:在 71 度时有一个“活动”热触发器 (cat /sys/class/thermal/thermal_zone0/trip_point_1_temp),巧合吗?也许它试图启动一个未连接的风扇?唯一的风扇就在 CPU 散热器上,并且一直全速运转。

以下是内核崩溃时的 MCELOG:

mcelog: mcelog read: No such device
Hardware event. This is not a software error.
MCE 0
CPU 0 BANK 4
TIME 1418932337 Thu Dec 18 14:52:17 2014
MCG status:
MCi status:
Uncorrected error
Error enabled
Processor context corrupt
MCA: Internal unclassified error: 402
Running trigger `unknown-error-trigger'
STATUS b200000000100402 MCGSTATUS 0
MCGCAP c09 APICID 0 SOCKETID 0
CPUID Vendor Intel Family 6 Model 58

相关内容