【发布时间】:2012-12-10 07:54:22
【问题描述】:
我们有六台服务器在运行几天后随机挂起。检查消息日志,我观察到它们都有“clocksource tsc 不稳定”,然后是“时间:acpi_pm clocksource 已安装”。所有这些消息都发生在我们的一个应用程序调整系统时间的时刻,该应用程序偶尔会保持服务器时间与远程系统同步。在每种情况下,服务器都会在安装“acpi_am”时钟源后的几个小时内挂起。
我们使用stime()函数直接设置系统时间。
我是这种调试的新手,但我试图通过阅读 tsc.c 源代码来了解它。我们的内核版本是 2.6.23.8,cpu 是 Intel Core 2 Quad Q9400。
这是一个内核错误吗?还是 acpi_pm 时钟源有问题?
编辑 1:在 git log 搜索当前 Linux 内核树中与“时钟源”相关的所有新更改后,结果发现时钟源有大量更改。这看起来很难找到可能适用于我的问题的现有修复程序。
编辑 2:看起来我没有 HPET
cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc acpi_pm jiffies
编辑 3:谢谢@thkala。 “挂起”的描述:我仍然可以 ping 服务器。使用 telnet 我仍然可以探测到 21、80 等公共端口仍然打开。但是 SSH、VNC 会“挂起”(服务器没有响应)。将监视器连接到服务器,可以用鼠标光标看到 GUI,但屏幕只是冻结在同一画面上。连接usb光电鼠标到服务器,红灯闪烁一次,完全变暗。连接usb键盘,caplock numlock全部不亮。
编辑4:至于证据。 @thkala 真的有一个好点子。在强制关闭并重新启动后,我检查了所有 5 台服务器的“挂起”问题的消息,除了“clocksource tsc 不稳定”之外没有其他异常消息。 “tsc”日志在特定的引导会话期间发生一次,并且在每种情况下,挂起都发生在安装“acpi_pm”时钟源之后。一些服务器运行了很多~16 天,在安装“acpi_pm”后的 1 到 13 小时内,服务器挂起。其他服务器没有显示此消息,也没有挂起..您是对的,这不是决定性的,但我一直在根据推测朝这个方向进行挖掘..
有人知道这个吗?
【问题讨论】:
-
您的内核版本很古老,这可能是问题的一部分……为了更有帮助,我不久前在 Core 1 上也遇到过这个问题(“clocksource tsc 不稳定”问题)并且必须在内核命令行中添加“notsc”。
-
您系统上的“正确”时钟源应该是 HPET(我猜),是内核内置的吗?
-
感谢@filmor 的提示。
标签: linux linux-kernel