Soft Lockup Debugging
Russell King - ARM Linux
linux at arm.linux.org.uk
Thu Feb 25 16:43:18 EST 2010
On Thu, Feb 25, 2010 at 10:20:17AM -0500, Aric D. Blumer wrote:
> [ 450.102093] Exception stack(0xcfd79b70 to 0xcfd79bb8)
> [ 450.107170] 9b60: 00000029 cf80aac0 c043b7f4 40000013
> [ 450.115604] 9b80: cf80aac0 00000029 00000029 c040d730 cfd78000 c0440900 0000000a cfd79bd4
> [ 450.124064] 9ba0: cfd79bd8 cfd79bb8 c007cc8c c007b1ac 40000013 ffffffff
> [ 450.132506] r6:04000000 r5:cfd79ba4 r4:ffffffff
> [ 450.137222] [<c007b180>] (handle_IRQ_event+0x0/0x84) from [<c007cc8c>] (handle_level_irq+0x78/0xf0)
> [ 450.146419] r7:c040d730 r6:cfd79cb0 r5:00000029 r4:c0416648
> [ 450.152195] [<c007cc14>] (handle_level_irq+0x0/0xf0) from [<c0030060>] (__exception_text_start+0x60/0x74)
> [ 450.161910] r5:c0447f20 r4:00000029
> [ 450.165559] [<c0030000>] (__exception_text_start+0x0/0x74) from [<c0030a70>] (__irq_svc+0x30/0xc0)
> [ 450.174667] Exception stack(0xcfd79c10 to 0xcfd79c58)
> [ 450.179745] 9c00: 00000014 cf8bce00 c043b7a0 40000013
> [ 450.188188] 9c20: cf8bce00 00000014 00000014 c040d730 cfd78000 c0440900 0000000a cfd79c74
> [ 450.196649] 9c40: cfd79c78 cfd79c58 c007cc8c c007b1ac 40000013 ffffffff
> [ 450.205105] r6:00000200 r5:cfd79c44 r4:ffffffff
> [ 450.209815] [<c007b180>] (handle_IRQ_event+0x0/0x84) from [<c007cc8c>] (handle_level_irq+0x78/0xf0)
> [ 450.219011] r7:c040d730 r6:cfd79d60 r5:00000014 r4:c041615c
> [ 450.224797] [<c007cc14>] (handle_level_irq+0x0/0xf0) from [<c0030060>] (__exception_text_start+0x60/0x74)
> [ 450.234512] r5:c0447f20 r4:00000014
> [ 450.238159] [<c0030000>] (__exception_text_start+0x0/0x74) from [<c0030a70>] (__irq_svc+0x30/0xc0)
Looks to me like a stuck IRQ problem - but no idea which IRQ. You'll
need to disassemble handle_IRQ_event to find out which register the
interrupt number ends up in when PC=0xc007b1ac, and then read it
from the exception stack. The register order there is:
r0-r12, sp (r13), lr (r14), pc (r15), cpsr, -1
More information about the linux-arm-kernel
mailing list