非常底层的Kernel panic,这种有什么方法没?
Kernel panic - not syncing: Kernel panic - not syncing: somthinge wrong!CPU1: stopping
CPU: 1 PID: 0 Comm: swapper/1 Tainted: P O 3.10.0 #2
[<c001a704>] (unwind_backtrace+0x0/0xf4) from [<c0016d84>] (show_stack+0x10/0x14)
[<c0016d84>] (show_stack+0x10/0x14) from [<c0019018>] (handle_IPI+0x188/0x1b0)
[<c0019018>] (handle_IPI+0x188/0x1b0) from [<c0008528>] (gic_handle_irq+0x88/0x8c)
[<c0008528>] (gic_handle_irq+0x88/0x8c) from [<c0012b40>] (__irq_svc+0x40/0x50)
Exception stack(0xd4061f98 to 0xd4061fe0)
1f80: c0934930 00000000
1fa0: 47a39eda 00000000 c066dff9 c0643d74 c047ee6c d4060000 c066dff9 d4060000
1fc0: d4060000 c0643d14 00000000 d4061fe0 c0014244 c0014248 60000013 ffffffff
[<c0012b40>] (__irq_svc+0x40/0x50) from [<c0014248>] (arch_cpu_idle+0x2c/0x30)
[<c0014248>] (arch_cpu_idle+0x2c/0x30) from [<c005c034>] (cpu_startup_entry+0xfc/0x140)
[<c005c034>] (cpu_startup_entry+0xfc/0x140) from [<40472104>] (0x40472104)
��������������������������������
System startup��������������������������������
U-Boot 2010.06 (Jan 11 2016 - 17:48:44)
=============
嵌入式产品老化出现的,一半的oop出现在内核模块中,根据堆栈信息反编译就能找到出错地方,这种怎么处理? kernel 的 log 不全,这只是最终死的地方而已, 问题可能出在前面 老化了2个多月没关机出现的问题,30台设备中的一台
串口目前只保存了这么多信息了。非常难复现,这种堆栈信息有什么方法调试?
回复 2# hanshu830
回复 3# andycrusoe
找到出错点, 把dump的内容和实际的代码比对一下, 看看对不对。 有可能是内存出错了, 导致指令和编译出来的指令不一直, 或者data错了 用的hisilicon,提供的芯片资料很简单的,没什么底层硬件说明,看出错的函数非常靠近底层硬件,难搞
回复 4# hanshu830
回复 5# andycrusoe
找海思的人分析,毕竟是他们做的东西。 somthinge wrong! 这个单词为什么是错的? 串口打印,可能被其它地方的打印混淆在一起,导致的
回复 7# smalloc
页:
[1]