You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux下/proc文件同步延迟致看门狗机制异常的排查求助

看门狗机制重置命令延迟/丢失问题排查求助

实现的看门狗机制

  • 内核模块:在/proc文件中维护线程计数器列表,每秒递增每个计数器,当计数器达到最大值时,判定对应线程可能卡顿。
  • 用户态程序:生成若干受内核模块监控的线程,每个线程每10秒通过向/proc/counters写入特定字符串发送计数器重置命令,核心代码如下:
time_t timer = time(NULL);
int n = 0;
while (true) {
    if (time(NULL) >= timer + 10) {
        timer = time(NULL);
        char szData[64];
        memset(szData, 0, 64);
        sprintf(szData, "s|%d|%s", tid, function_name);
        if ((n = strlen(szData)) > 0) {
            int t = 0;
            int fp = 0;
            while ((fp = open("/proc/counters", O_WRONLY | O_EXCL)) == -1 && errno == EACCESS) {
                if (++t > 4) {
                    break;
                }
                usleep(260000);
            }
            if (fp == -1) {
                return 1;
            }
            write(fp, szData, n);
            close(fp);
        }
    }
}

问题现象

理论上每个计数器最大值应为10,但实际部分计数器会达到20、30甚至更高。内核模块端显示重置命令未及时到达,后续会在1秒内收到多条延迟的命令:

/proc计数器文件内容示例

*856 7 20/600 thread_function_name

内核模块调试日志

Aug 26 11:16:38 XWEB-PRO kern.info kernel: [  114.086453] register 856
Aug 26 11:16:38 XWEB-PRO kern.info kernel: [  124.138523] register 856
Aug 26 11:16:58 XWEB-PRO kern.info kernel: [  134.190508] register 856
Aug 26 11:16:58 XWEB-PRO kern.info kernel: [  144.242274] register 856
Aug 26 11:16:58 XWEB-PRO kern.info kernel: [  144.242277] register 856
Aug 26 11:17:08 XWEB-PRO kern.info kernel: [  154.294433] register 856
Aug 26 11:17:28 XWEB-PRO kern.info kernel: [  164.346516] register 856
Aug 26 11:17:28 XWEB-PRO kern.info kernel: [  174.398552] register 856
Aug 26 11:17:38 XWEB-PRO kern.info kernel: [  184.468022] register 856
Aug 26 11:17:48 XWEB-PRO kern.info kernel: [  194.522241] register 856

从日志可见:本该11:16:48到达的命令缺失,11:16:58收到3条;11:17:18的命令缺失,11:17:28收到2条。已尝试fflush、fsync和sync,均无效,恳请指点排查方向。

内容的提问来源于stack exchange,提问作者bui3

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 01:55:14