关于内核报错
小弟在arm9200平台上开发,内核使用的是2.4.19-rmk7,测试我自己写的驱动,结果系统报错如下:
Unable to handle kernel paging request at virtual address 6568a040
mm = c019a9ac pgd = c0004000
*pgd = 00000000, *pmd = 00000000
Internal error: Oops: 0
CPU: 0
pc : [<c0023bf8>] lr : [<c00241f4>] Tainted: PF
sp : c0199e94 ip : ffffffff fp : c0199ea0
r10: 00000001 r9 : ffffffff r8 : a0000013
r7 : c88c7794 r6 : 00000093 r5 : 00000001 r4 : c715df30
r3 : 6568a040 r2 : 00000001 r1 : c019ae64 r0 : c715c000
Flags: nZCv IRQs off FIQs on Mode SVC_32 Segment kernel
Control: C000317F Table: 27104000 DAC: 0000001D
Process swapper (pid: 0, stack limit = 0xc0198374)
Stack: (0xc0199e94 to 0xc019a000)
9e80: c0199ec8 c0199ea4 c00241f4
9ea0: c0023bf0 c88c779c 00000000 c019a080 00000000 60000093 20014fc8 c0199f04
9ec0: c0199ecc c88c6a04 c0024168 00000002 00000000 00000000 00000002 00026abc
9ee0: 60000013 02020200 00003828 c0193121 00003020 00000000 c0199f24 c0199f08
9f00: c002bb4c c88c62b8 00000001 c019a0d8 fffffff7 c01b1e80 c0199f48 c0199f28
9f20: c002b8f0 c002baf0 c01b1e80 c0199f64 0000001e c001d6fc 60000013 c0199f60
9f40: c0199f4c c001d118 c002b884 c0199f98 fefff000 c0199fb8 c0199f64 c001c1e0
9f60: c001d0c4 00000000 00000032 00000000 60000013 c001d6b0 c0198000 c01aa858
9f80: c01aa84c c019ac4c 41129200 20014fc8 c0199fb8 c0199fbc c0199fac c001d6f0
9fa0: c001d6fc 60000013 ffffffff c0199fd0 c0199fbc c001d75c c001d6c0 c01b36c4
9fc0: c01d4a90 c0199fe0 c0199fd4 c001a030 c001d714 c0199ffc c0199fe4 c00086fc
9fe0: c001a010 c01aac68 c01dfcbc c01dfcbc 00000000 c019a000 c0008080 c00085b8
Backtrace:
Function entered at [<c0023be0>] from [<c00241f4>]
Function entered at [<c0024158>] from [<c88c6a04>]
Function entered at [<c88c62a8>] from [<c002bb4c>]
Function entered at [<c002bae0>] from [<c002b8f0>]
r7 = C01B1E80 r6 = FFFFFFF7 r5 = C019A0D8 r4 = 00000001
Function entered at [<c002b874>] from [<c001d118>]
r8 = 60000013 r7 = C001D6FC r6 = 0000001E r5 = C0199F64
r4 = C01B1E80
Function entered at [<c001d0b4>] from [<c001c1e0>]
r5 = FEFFF000 r4 = C0199F98
Function entered at [<c001d6b0>] from [<c001d75c>]
Function entered at [<c001d704>] from [<c001a030>]
r5 = C01D4A90 r4 = C01B36C4
Function entered at [<c001a000>] from [<c00086fc>]
Function entered at [<c00085a8>] from [<c0008080>]
Code: e24cb004 e3e0c000 e59f30bc e5902028 (e5931000)
Kernel panic: Aiee, killing interrupt handler!
In interrupt handler - not syncing
请问有什么办法能够分析这些信息?找到出错的原因呢?谢谢大家!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
cat /proc/ksyms|grep c0023be0
cat /proc/ksyms|grep c00241f4
...
看看是在哪个函数里出错了...
或者反汇编你的.o文件, 根据crash的地址,找到汇编行,推出源码行,再排错,这个比较有难度