皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

Linux 正在处理计数器以跟踪自启动以来挂起的任务数

Linux 正在处理计数器以跟踪自启动以来挂起的任务数

上周以原始补丁形式发送,并在本周日迭代到第二个版本,一个新的提案正在进行中,引入 “hung_task_detect_count” 作为一种方便的方法来跟踪自启动以来检测到挂起任务的次数。

通过 /proc/sys/kernel/hung_task_warnings 已经能够读取挂起任务警告的数量等。由于目前正在审查一组两个补丁,因此将添加 /proc/sys/kernel/hung_task_detect_count 以报告自引导以来检测到的挂起任务总数。

发出提出“hung_task_detect_count”计数器的补丁的 Lance Yang 在补丁的封面信中解释说:

“这个补丁集增加了一个计数器 hung_task_detect_count,用于跟踪检测到挂起任务的次数。

IHMO,挂起的任务是一个关键指标。目前,我们通过定期解析 dmesg 来检测它们。但是,此方法不如使用 counter 用户友好。

有时,NIC 或硬盘驱动器的短暂问题会迅速将 hung_task_warnings 降低到零。在没有警告的情况下,我们必须直接访问节点,以确保不再有挂起的任务,并且系统已经恢复。毕竟,仅靠负载平均值无法提供清晰的画面。

一旦这个计数器就位,在高密度部署模式中,我们计划将 hung_task_timeout_secs 设置为较低的数字以提高稳定性,即使这可能会导致误报。然后我们可以设置一个基于时间的阈值:如果挂起的任务持续时间超过这个持续时间,我们会自动将容器迁移到其他节点。根据过去的经验,这种方法可以帮助避免许多生产中断。

此外,就像 OOM 等其他已经有计数器的重要事件一样,为挂起的任务设置一个专用的计数器是有意义的;)”

对于这个 hung task detected 计数器,将此功能添加到 Linux 内核中只需 18 行新代码,并且正在 Linux 内核邮件列表中进行审核。鉴于它的大小很小,应该不会引起真正的争议,希望它很快就会出现在主线内核版本之一中。

转自 Linux Working On A Counter To Keep Track Of The Number Of Hung Tasks Since Boot – Phoronix