当前位置: 技术问答>linux和unix
oops的分析
来源: 互联网 发布时间:2016-04-02
本文导语: 首先声明我是arm系统。 1.一直以为系统core dump,结果发现这就是oops的。汗一个先。 2.我看到有很多人把oops贴出来,是一个个打的么?好多啊,有什么办法可以方便oops转化成文本。 3.oops的调试: 1)出现了oops如何定...
首先声明我是arm系统。
1.一直以为系统core dump,结果发现这就是oops的。汗一个先。
2.我看到有很多人把oops贴出来,是一个个打的么?好多啊,有什么办法可以方便oops转化成文本。
3.oops的调试: 1)出现了oops如何定位。我每次出现backtrace的调用堆栈都不一样。
2)kgdb要打补丁,如果一般方法不行再试,oops用 ksysmoops工具在arm平台上如何使用
因为我得不到system.map。
3)skyeye对调试程序有帮助的么。
4)我基本确定是应用程序的问题。多线程的。有没有什么应该注意的问题。首先pthread_join我调用的了,
这样,开启关闭线程的资源应该回收的了。但是有很多全局变量我没有加保护,会不会有问题。这些全局的
变量没有指针,链表。
最后,主要的目的是希望如何通过oops来定位问题所在,我的backtrace有filp_open ,tcp_sendmsg 什么的,每次不一样,是否是要在这些函数中printk来确定问题等等的。
回答最好详细点,或者有什么有价值的资料也可以的。有好的调试方法也可以。
最好不要告诉我kgdb ksysmopps了事的。谢谢。
1.一直以为系统core dump,结果发现这就是oops的。汗一个先。
2.我看到有很多人把oops贴出来,是一个个打的么?好多啊,有什么办法可以方便oops转化成文本。
3.oops的调试: 1)出现了oops如何定位。我每次出现backtrace的调用堆栈都不一样。
2)kgdb要打补丁,如果一般方法不行再试,oops用 ksysmoops工具在arm平台上如何使用
因为我得不到system.map。
3)skyeye对调试程序有帮助的么。
4)我基本确定是应用程序的问题。多线程的。有没有什么应该注意的问题。首先pthread_join我调用的了,
这样,开启关闭线程的资源应该回收的了。但是有很多全局变量我没有加保护,会不会有问题。这些全局的
变量没有指针,链表。
最后,主要的目的是希望如何通过oops来定位问题所在,我的backtrace有filp_open ,tcp_sendmsg 什么的,每次不一样,是否是要在这些函数中printk来确定问题等等的。
回答最好详细点,或者有什么有价值的资料也可以的。有好的调试方法也可以。
最好不要告诉我kgdb ksysmopps了事的。谢谢。
|
kernel的调试, 最好的方法就是printk和看code。
|
我看到有很多人把oops贴出来,是一个个打的么?好多啊,有什么办法可以方便oops转化成文本。
===========================
用
# dmesg
ldd3有个模块faulty,特意制造oops,你写一个测试faulty.ko的程序,应该清楚oops了.
===========================
用
# dmesg
ldd3有个模块faulty,特意制造oops,你写一个测试faulty.ko的程序,应该清楚oops了.
|
用回溯法 一个一个往回找 一直找到最深层那个错误的地方停下来 然后看代码
至于怎么贴上来,我都是在超级终端中复制粘贴的。。。楼上的说用dmesg命令也可以参考
至于怎么贴上来,我都是在超级终端中复制粘贴的。。。楼上的说用dmesg命令也可以参考