我看到在PPC上运行Linux 2.6.27.39的Soft Lockup问题。 我是Linux Kernel的新手,因此我不知道从哪里开始寻找。
[ 435.940577] BUG: soft lockup - CPU#0 stuck for 11s! [swapper:0]
[ 435.958373] NIP: 8d152a94 LR: 8d14bd4c CTR: 8d14bd28
[ 435.973239] REGS: 8090dc30 TRAP: 0901 Not tainted (2.6.27.39-xCCM)
[ 435.992534] MSR: 00029200 <EE,ME><0> CR: 24022028 XER: 00000030
[ 436.010819] TASK = 808ef4c8[0] 'swapper' THREAD: 8090c000<0>
[ 436.027824] NIP [8d152a94] pspan_handler+0x4c/0x9a0 [mmap_drv]
[ 436.045305] LR [8d14bd4c] mmapdrv_handler+0x24/0x64 [mmap_drv]
[ 436.062777] Call Trace:
[ 436.070088] [8090dd10] [8d14bd4c] mmapdrv_handler+0x24/0x64 [mmap_drv]<0>
[ 436.090445] [8090dd20] [800713f8] _handle_IRQ_event+0x60/0xb8<0>
[ 436.108445] [8090dd40] [800714ec] handle_IRQ_event+0x9c/0x15c<0>
[ 436.126448] [8090dd60] [80073658] handle_fasteoi_irq+0xb4/0x17c<0>
[ 436.144975] [8090dd80] [800053a0] do_IRQ+0x78/0xf4<0>
[ 436.160112] [8090dd90] [80010d2c] ret_from_except+0x0/0x18<0>
[ 436.177331] [8090de50] [800713f8] _handle_IRQ_event+0x60/0xb8<0>
[ 436.195331] [8090de90] [80005294] do_softirq+0x5c/0x60<0>
[ 436.211506] [8090dea0] [8003fb6c] irq_exit+0x68/0x88<0>
[ 436.227161] [8090deb0] [800053a4] do_IRQ+0x7c/0xf4<0>
[ 436.242294] [8090dec0] [80010d2c] ret_from_except+0x0/0x18<0>
[ 436.259515] [8090df80] [80008e5c] cpu_idle+0x80/0xf8<0>
[ 436.275183] [8090dfa0] [8033efa4] __got2_end+0x7c/0x90<0>
[ 436.291358] [8090dfc0] [803d77cc] start_kernel+0x294/0x2f4<0>
[ 436.308576] [8090dff0] [800003c0] skpinv+0x2e8/0x324<0>
经过几行痕迹......我得到了oops ......
[ 448.638921] Send_signal: Process 0:swapper has send signal 7 to Me(pltf)
[ 448.659257] print_user_stack:current task_struct pid 0, tgid 0
[ 448.676989] USER Call trace:
[ 448.685597] [8090dff0] PC
[ 448.693690] Unable to handle kernel paging request for data at address 0x00029200
[ 448.716113] Faulting instruction address: 0x80049e3c
[ 448.730979] Oops: Kernel access of bad area, sig: 11 [#1]
[ 448.747145] PREEMPT LTT NESTING LEVEL : 0
这最终会重置Linux板。 我检查了不寻常的中断,信号量或互斥锁和东西。但我没有发现任何异常。 任何人都可以指出我正确的方向,如何指出缺陷,从哪里开始,潜在的罪魁祸首等。