在我的设备中,我启用了软件watchdog来监控应用程序每5秒更新一次的文件。我有configured软件看门狗,如下所示
file = /data/file_name_to_watch
change = 10
Watchdog在启动时使用以下命令启动:
启动/usr/sbin/watchdog.sh -f -v -c watchdog.conf
负责更新文件的应用程序(file_name_to_watch)在启动时看门狗deamon后启动。应用程序每隔5秒更新一次由监视程序监视的文件。
问题,如果在启动时启动了监视程序,则监视程序正在重新启动系统,如果在启动时未启动监视程序但在应用程序启动后手动启动,则同样的问题不存在。
dmesg shows "Watchdog did not stop"
此外,将看门狗配置文件更改为以下内容也无济于事。
file = /data/file_name_to_watch
change = 20
在启动过程中启动监视程序10秒后,我已检查文件是否已更新。
任何有关调试此问题的指示都将不胜感激。
我用于看门狗的代码:https://layers.openembedded.org/layerindex/recipe/122/
答案 0 :(得分:0)
调试并发现问题是时间(NULL)在src / file_stat.c中返回一个巨大的数字
由于日期未在启动期间设置得很早,因此发生了这种情况。