- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我们有六台服务器在运行几天后随机挂起。检查消息日志我发现它们都有“clocksource tsc unstable”,然后是“Time: acpi_pm clocksource has been installed”。所有这些消息都发生在我们的一个应用程序调整系统时间的时刻,该应用程序使服务器时间偶尔与远程系统保持同步。在每种情况下,服务器都会在安装“acpi_am”时钟源后的几个小时内挂起。
我们使用stime()函数直接设置系统时间。
我是这种调试的新手,但我试图通过阅读 tsc.c 源代码来了解它。我们的内核版本是2.6.23.8,cpu是Intel Core 2 Quad Q9400。
这是内核错误吗?还是 acpi_pm 时钟源有问题?
编辑 1:在 git log 搜索当前 Linux 内核树中与“clocksource”相关的所有新更改后,发现有大量关于 clocksources 的更改。这看起来很难找到可能适用于我的问题的现有修复。
编辑 2:看起来我没有 HPET
cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc acpi_pm jiffies
编辑 3:谢谢@thkala。 “挂起”的描述:我仍然可以 ping 服务器。使用 telnet 我仍然可以探测到 21、80 等公共(public)端口仍然打开。但是 SSH、VNC 会“挂起”(服务器无响应)。将显示器连接到服务器,可以用鼠标光标看到 GUI,但屏幕只是停在同一张图片上。将usb光电鼠标连接到服务器,红灯会闪烁一次然后完全熄灭。.连接usb键盘,caplock numlock都不亮。
编辑 4:至于证据。 @thkala 真的说得很有道理。我检查了我所有的 5 个服务器,在强制它们关闭和重新启动后,它们的消息存在“挂起”问题,除了“clocksource tsc unstable”之外没有其他异常消息。 “tsc”日志在特定的引导 session 期间发生一次,并且在每种情况下挂起都发生在安装“acpi_pm”时钟源之后。一些服务器运行了很多 ~16 天,在安装“acpi_pm”后的 1 到 13 小时内,服务器挂起。其他服务器没有显示此消息也没有挂起..你是对的这不是决定性的但我一直在根据推测朝这个方向挖掘..
有人对此有想法吗?
最佳答案
(我不太喜欢通过 Crystal 球进行调试,但我会试一试...)
注意几点:
您没有在问题的上下文中指定“hung” 的确切含义。内核是否完全停止 - 还是只是您的应用程序?它会达到 100% CPU 并保持在那里吗?它对任何刺激都有反应吗?出现问题时是否有相关的控制台消息?
你没有提到你是如何最终得到时钟和计时系统的,因为你的嫌疑人 - “几个小时内” 并不是确凿的证据。排除硬件问题(包括电源波动)了吗?您还排除了什么?为什么?
不稳定的时钟源比您想象的更常见 - 来 self 自己的系统:
kernel: Marking TSC unstable due to TSC halts in idle
您使用的是非常旧的内核 - 有几个与调整时间时内核锁定相关的修复程序,例如现在著名的 June 30, 2012 leap second issue。 .
您似乎患有 NIH syndrome - 使用自定义应用程序进行时间同步而不是 NTP听起来像是一场灾难……
关于linux - 系统挂起可能与 "clocksource tsc unstable"相关?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13796944/
如何确定我在系统nixos安装上安装的所有软件包(即/etc/nixos/configuration.nix中列出的软件包,我使用sudo nixos-rebuild switch安装的软件包)都使用
为什么当我添加 #![allow(unstable)] 指令时 Rust 会给我一个警告? unknown allow attribute: unstable, #[warn(unknown_lint
首先,这是我第一次在 StackOverflow 上发布问题,所以如果我做错了什么,请不要杀了我。 我的问题是: 我们几乎没有一家知名的法国提供商提供的专用服务器。我们最近通过其中一台服务器获得了 5
根据MDN spec , Javascript 的 sort() 函数“不稳定”(不维护相同元素的输入顺序)。 具有讽刺意味的是,Firefox 目前似乎没有实现这一点——但 Chrome 似乎实现了
我刚刚看到一个线程,询问惰性集合。它们看起来像这样: let array = Array(1...10).lazy 文档是这样描述惰性集合的:“一个集合包含与 Base 集合相同的元素,但在其上延迟实
关于最新 1.2.0 rc 系列的广泛文档表明 Angular 团队正在推广它。 该系列更加模块化,它要求下载用于路由、动画等的库。我担心这是否会使代码更容易出错,尤其是因为 Angularjs 本身
我确实记得Windows 7拥有一些技术,该技术可以标记几次崩溃的应用程序,并在以后以更强大,更慢的系统运行时间执行它们。可以禁用此功能或编辑列表,但是我不知道如何操作。 对于任何正确的关键字或链接,
对于命令行,我的意思是使用 rustc 标志。 与在那些源文件中添加 #![allow(unstable)] 行相比,这将是一个方便的选择...我一次构建了一大堆。 最佳答案 rustc -A uns
我遇到了 ul li:hover 的问题。 谁能帮我解决一下? View fiddle on Plunker : http://plnkr.co/edit/4RDyOkZCFRWnuu42yAsm?p
我正在使用完整的系统模拟器启动 Linux 内核,并且我想在启动的系统上运行我的基准测试。但是,当它启动时,它会向我显示以下消息:“clocksource tsc不稳定”,有时它会在开始时挂起。然而,
只是想知道是否有人可以解释为什么“不稳定排序”被认为是坏的?基本上,我看不到任何真正重要的情况。谁愿意提供一个? 最佳答案 如果您有一个 GUI 允许人们通过单击该列对单个列进行排序,并且您使用稳定排
我正在使用 Google Guava 中的 com.google.common.net.MediaType 类库,它被标记为 @Beta。我想禁止显示这被标记为不稳定的警告。 我需要使用什么 @Sup
环境: Ubuntu 18.04.1,DigitalOcean:RAM 2Gb + 2CPU Nginx (OpenResty) + Lua 我在做什么: 我尝试通过 HTTPS 发送这样的简单 PO
我在 Dockerfile 中使用以下内容来安装 google-chrome(基于 this): RUN apt-get update && apt-get install -y wget --no-
我有以下代码 Future getInitialData() async { print('OPENING'); await open(); print('DB = $_d
我正在使用 Iron 框架试用 Hello World 应用程序。这是我的 main.rs 中的内容: extern crate iron; extern crate router; use iron
我有一个用 Rust 1.0 alpha 编写的非常简单的 cat 函数。 use std::io; fn main(){ let mut reader = io::stdin();
我有一个 div,其中经常显示一个没有空格的大字符串。 我希望文本环绕 div,如下所示: 我正在努力让它像左图那样工作。 在 Firefox 上(使用 v. 33.0 测试),大部分时间文本显示在左
这个问题在这里已经有了答案: What is stability in sorting algorithms and why is it important? (10 个答案) 关闭 8 年前。 谁
我们有六台服务器在运行几天后随机挂起。检查消息日志我发现它们都有“clocksource tsc unstable”,然后是“Time: acpi_pm clocksource has been in
我是一名优秀的程序员,十分优秀!