看门狗超时前在内核打印信息
来源:互联网 发布:mysql 查看当前连接数 编辑:程序博客网 时间:2024/05/17 06:42
前不久,有几台设备一直在无故复位,虽然我很怀疑是应用程序搞死设备的,但公司的人员一向都是自己找不到问题就赖内核。对于这个复位,我的意见是禁止看门狗再测试,但没人理会,因此我想在看门狗超时前在内核里打印点东西,以证明到底是不是狗超时引起的复位(其实很久前就有这个想法,也尝试了,就是因为一个小小的疏忽不成功)。
在狗超时前打印信息需要在WDT驱动中改代码。加上打印信息,就能知道到底是不是看门狗超时导致系统复位了。
前提条件是芯片的看门狗支持DELAY中断(其它的不我知道,反正我所搞的那个芯片是有的)。
步骤如下:
在probe函数
1、中注册DELAY中断,
2、设置DELAY时间(即狗超时前多少秒触发中断)。
3、使能DELAY中断。
4、在DELAY中断处理函数(isr)打印你想打印的信息。
5、为了观看时间,可以调用do_gettimeofday和rtc_time_to_tm函数(只要#include <linux/rtc.h>即可)。
另外要注意的是在设置狗超时时间timeout时,要设置DELAY时间。
之前我搞不成功,是因为我没有在设置狗超时时间的同时设置DELAY时间。因为超时时间一量更改了,DELAY也必须跟着更改。
下面是效果示例:
// 启动时间:
XXXX -rtc XXXX 1-rtc: setting system clock to 2014-05-14 02:09:19 UTC (1400033359)
//狗超时:
<- Late Lee Watchdog DELAY interrupt happened ->
At UTC time :2014-04-14 02:10:18
Will reboot soon...
代码是公司的,思路是自己整理的,只给出思路,不便放代码。打印信息也作了处理,但不影响示例。
李迟记于2014年5月20日
- 看门狗超时前在内核打印信息
- 内核信息打印在屏幕上
- 在串口禁止打印内核信息
- 禁止内核打印信息
- 内核打印信息
- 打印linux内核信息
- 内核通用打印信息
- Linux内核开机打印信息
- 屏蔽内核启动打印信息
- 内核信息打印到文件
- win7 debugview 打印内核信息
- 移植最新的内核之:使内核的打印信息可以在串口输出
- 禁止内核打印内核信息(printk)
- 配置内核看门狗支持
- 内核看门狗简介
- 在IE状态栏显示会话超时信息
- 让adb logcat打印内核调试信息
- 把内核中的信息打印到文件
- 杭电ACM---人见人爱A+B
- 朴智妍 我的女神
- ubuntu14.04下nessus的安装
- 最严格的身份证校验(Java版)
- HDOJ 1512 Monkey King -- 左偏树
- 看门狗超时前在内核打印信息
- 接口常量值可被修改
- win7旗舰版64位占了20多G的内存的清理方法
- apache自带的ab压力测试工具用法详解
- Uva 11475 : Extend to Palindrome(Hash或KMP)
- android 各种控件颜色值的设置(使用Drawable,Color)
- Wayland的HDC:cairo绘图库
- 无语啊 郁闷死我了
- 2014 百度之星题解 1002 - Disk Schedule