Chinaunix

标题: 谁知道这个oops错误,如何分析,最好能把问题定位清楚的方法,求大神支招!!! [打印本页]

作者: yv9200    时间: 2014-12-11 15:56
标题: 谁知道这个oops错误,如何分析,最好能把问题定位清楚的方法,求大神支招!!!
dmesg信息如下
[  129.708000] CPU 3 Unable to handle kernel paging request at virtual address 0000000000007068, epc == ffffffffc001cb78, ra == ffffffffc001ca50
[  129.716000] Oops[#1]:
[  129.716000] Cpu 3
[  129.716000] $ 0   : 0000000000000000 000000000047d998 0000000000007068 000000000000000c
[  129.720000] $ 4   : 0000000000000020 000000000047d998 0000000000000000 ffffffffc001ca0c
[  129.720000] $ 8   : 0000000c00007068 0000000000000000 0000000000000000 0000000000000000
[  129.720000] $12   : 0000000000000008 ffffffff80305a98 ffffffff80432f1c 0000000000000000
[  129.720000] $16   : 98000000f99cdc00 000000000047d978 000000000047d9f8 ffffffffc0045600
[  129.720000] $20   : 000000000047d978 0000000000000000 0000000000002828 000000002cf5a178
[  129.720000] $24   : 0000000000000000 ffffffff805ce1c4                                 
[  129.720000] $28   : 98000000f98ec000 98000000f98efdc0 000000007fb4b490 ffffffffc001ca50
[  129.720000] Hi    : 0000000000000000
[  129.720000] Lo    : 003d08d859ce4b00
[  129.720000] epc   : ffffffffc001cb78 $L98+0x4/0x10 [vdriver]
[  129.720000]     Not tainted
[  129.720000] ra    : ffffffffc001ca50 $L85+0x30/0x6c [vdriver]
[  129.720000] Status: 7000fce3    KX SX UX KERNEL EXL IE
[  129.720000] Cause : 10000008
[  129.720000] BadVA : 0000000000007068
[  129.720000] PrId  : 00006305 (ICT Loongson-3A5)
[  129.720000] Modules linked in: vdriver [last unloaded: vdriver]
[  129.720000] Process runPlugins (pid: 3035, threadinfo=98000000f98ec000, task=98000000f96b06c8, tls=000000002ba3b150)
[  129.720000] Stack : 0000000000000000 0000000000000000 98000000f95eccc0 0000000000000000
[  129.720000]         98000000f95eccc0 0000000000000009 0000000000000000 ffffffffc0045600
[  129.720000]         000000000047d978 0000000000000000 0000000000002828 000000002cf5a178
[  129.720000]         000000007fb4b490 ffffffff80433054 000000007fb4b490 98000000f9e59440
[  129.720000]         0000000000000001 000000002beac000 0000000031a66e84 0000000000000014
[  129.720000]         0000000000000000 ffffffff803eb7e0 000000007fb4c768 000000007fb4b760
[  129.720000]         0000000000000000 000000002cf5e7f8 000000002cf5abb8 0000000000000000
[  129.720000]         0000000000002828 ffffffff80303c24 0000000000000000 000000007000fce0
[  129.720000]         0000000000000fd6 0000000000007068 0000000000000009 ffffffffc0045600
[  129.720000]         000000000047d978 000000000047d998 0000000000000000 0000000000000000
[  129.720000]         ...
[  129.720000] Call Trace:
[  129.720000] [<ffffffffc001cb78>] $L98+0x4/0x10 [vdriver]
[  129.720000] [<ffffffffc001ca50>] $L85+0x30/0x6c [vdriver]
[  129.720000]
[  129.720000]
[  129.720000] Code: 08007400  ae020018  9e020000 <8c420000> 08007400  ae020018  9e030000  8c620000  0002103c
[  129.720000] Disabling lock debugging due to kernel taint
最好能说说cpu3那列都是做什么的。

作者: 瀚海书香    时间: 2014-12-12 09:12
回复 1# yv9200
epc   : ffffffffc001cb78 $L98+0x4/0x10 [vdriver]


不知道你的EPC怎么不现实函数名啊?

如果有函数名,可以通过objdump -S somefile.o导出对应的汇编代码和偏移,找对出错的代码行,从代码行分析

   
作者: arm-linux-gcc    时间: 2014-12-12 10:38
建议打开CONFIG_KALLSYMS和CONFIG_KALLSYMS_ALL,看oops更方便一些
作者: breakCU    时间: 2014-12-12 12:32
objdump看看吧,锁和抢占控制对么?
作者: baron_zz    时间: 2014-12-13 16:16
以前遇到过一次oops错误,从Log中可以看到SP指针,然后再用addr2line工具,找到对应的函数。


作者: hejianet    时间: 2014-12-14 12:25
版内有篇文章,把文本的代码段 [  129.720000] Code:   翻译成汇编
作者: gaojl0728    时间: 2014-12-30 13:11
没有符号其他都是瞎扯




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2