Mystical panic when RPI2 is left idle for a while
Jukka A. Ukkonen
jau789 at gmail.com
Sun Apr 24 10:53:37 UTC 2016
Hello all,
I have a faint recollection that some others have also said
their RPI2 panics when it is left idle for too long.
Mine has been giving me those little surprises quite regularly,
but until I got a 3,3V serial console cable I have had no
chance to debug the problem any further.
I hope the attached backtrace is more informative to someone
else. All I was able to understand was that some process
apparently tries to sleep while it is not allowed to do that.
Maybe it is holding some locks or semaphores or something,
and does not release them before trying to sleep.
--jau
-------------- next part --------------
*** Creating the temporary root environment in /usr/obj/tmp/temproot
*** /usr/obj/tmp/temproot ready for use
*** Creating and populating directory structure in /usr/obj/tmp/temproot
*** Beginning comparison
*** Checking /etc/rc.d for stale files
*** The following files exist in /etc/rc.d but not in
/usr/obj/tmp/temproot/etc/rc.d/:
mroute6d
The presence of stale files in this directory can cause the
dreaded unpredictable results, and therefore it is highly
recommended that you delete them.
*** Delete them now? [n] panic: sleepq_add: td 0xc3a5e370 to sleep on wchan 0xc3afaf00 with sleeping prohibited
cpuid = 0
KDB: enter: panic
[ thread pid 11 tid 100008 ]
Stopped at $d.10: ldrb r15, [r15, r15, ror r15]!
db>
db>
db> bt
Tracing pid 11 tid 100008 td 0xc3a5e370
db_trace_self() at db_trace_self
pc = 0xc0558728 lr = 0xc05584fc (db_trace_thread+0x58)
sp = 0xd782e7b8 fp = 0xd782e810
db_trace_thread() at db_trace_thread+0x58
pc = 0xc05584fc lr = 0xc014811c ($a.21+0x10c)
sp = 0xd782e818 fp = 0xd782e830
$a.21() at $a.21+0x10c
pc = 0xc014811c lr = 0xc0147d7c ($a.13+0x33c)
sp = 0xd782e838 fp = 0xd782e8d8
r2 = 0xffffffff r3 = 0xc3a3ee60
r4 = 0xc07b8adc r5 = 0x00000000
r6 = 0x00000000 r10 = 0xc06c0840
$a.13() at $a.13+0x33c
pc = 0xc0147d7c lr = 0xc01479e8 (db_command_loop+0x5c)
sp = 0xd782e8e0 fp = 0xd782e900
r4 = 0xc05c5b10 r5 = 0xc014ac60
r6 = 0xc0149f84 r7 = 0xc0147a40
r8 = 0xc014ac60 r9 = 0xc07b8ac8
r10 = 0xc014ac50
db_command_loop() at db_command_loop+0x5c
pc = 0xc01479e8 lr = 0xc014aac0 ($a.17+0x124)
sp = 0xd782e908 fp = 0xd782ea20
r3 = 0x00000000 r4 = 0x00000001
r5 = 0x00000000 r6 = 0xc07b8ad4
r7 = 0xc07aa280 r8 = 0xc06c0b68
r9 = 0xc02ff888 r10 = 0xc05ecc47
$a.17() at $a.17+0x124
pc = 0xc014aac0 lr = 0xc02f98c8 (kdb_trap+0xfc)
sp = 0xd782ea28 fp = 0xd782ea50
r4 = 0x00000000 r5 = 0x00000001
r6 = 0x00000000 r10 = 0xc05ecc47
kdb_trap() at kdb_trap+0xfc
pc = 0xc02f98c8 lr = 0xc0573184 (undefinedinstruction+0x30c)
sp = 0xd782ea58 fp = 0xd782eac8
r1 = 0x00000000 r2 = 0x00000000
r3 = 0x600000d3 r4 = 0x00000000
r5 = 0x00000000 r6 = 0xc0572db8
r7 = 0xe7ffffff r8 = 0xc3a5e370
r9 = 0xc02f9238 r10 = 0xd782ead0
undefinedinstruction() at undefinedinstruction+0x30c
pc = 0xc0573184 lr = 0xc055b43c (exception_exit)
sp = 0xd782ead0 fp = 0xd782eb68
r4 = 0xa00000d3 r5 = 0xc07aa280
r6 = 0xc0799f18 r7 = 0x00000001
r8 = 0xd782ebb4 r9 = 0xc0799e18
r10 = 0xc07ba8c4
exception_exit() at exception_exit
pc = 0xc055b43c lr = 0xc02f9230 (kdb_enter+0x3c)
sp = 0xd782eb60 fp = 0xd782eb68
r0 = 0x00000000 r1 = 0xc0799e18
r2 = 0xc05ecc03 r3 = 0x00000213
r4 = 0xc05e85a1 r5 = 0xc07aa280
r6 = 0xc0799f18 r7 = 0x00000001
r8 = 0xd782ebb4 r9 = 0xc0799e18
r10 = 0xc07ba8c4 r12 = 0xc02a73dc
$a.11() at $a.11
pc = 0xc02f923c lr = 0xc02bfa9c (vpanic+0x154)
sp = 0xd782eb70 fp = 0xd782eb90
r4 = 0x00000100 r5 = 0xc3a5e370
vpanic() at vpanic+0x154
pc = 0xc02bfa9c lr = 0xc02bf91c ($d.12)
sp = 0xd782eb98 fp = 0xd782ebac
r3 = 0xc0799d67 r4 = 0xc05ee695
r5 = 0xd782ebb4 r6 = 0xc0799f18
r7 = 0x000000af r8 = 0xc3afaf00
r9 = 0x00000000 r10 = 0x00000000
$d.12() at $d.12
pc = 0xc02bf91c lr = 0xc0306928 (sleepq_add+0x2ec)
sp = 0xd782ebc0 fp = 0xd782ebe8
r3 = 0xd782ebb4 r4 = 0xc02bf808
r5 = 0xc3a5e370 r6 = 0xc07aa3e8
r10 = 0x00000000
sleepq_add() at sleepq_add+0x2ec
pc = 0xc0306928 lr = 0xc02c9ce4 (_sleep+0x258)
sp = 0xd782ebf0 fp = 0xd782ec40
r1 = 0xc3b3de88 r2 = 0xc061fd80
r3 = 0xc3b3de88 r4 = 0xc3b3de88
r5 = 0xc061fd80 r6 = 0xc3afaf00
r7 = 0xc030663c r8 = 0x00000001
r9 = 0xc07ba69c r10 = 0x00000000
_sleep() at _sleep+0x258
pc = 0xc02c9ce4 lr = 0xc0579450 ($a.11+0x218)
sp = 0xd782ec48 fp = 0xd782ec90
r4 = 0xc3b3de80 r5 = 0xd782ec9c
r6 = 0x00000000 r7 = 0xc02c9a8c
r8 = 0x00000100 r9 = 0xc05797fc
r10 = 0xc05797e8
$a.11() at $a.11+0x218
pc = 0xc0579450 lr = 0xc0155bec ($a.35+0x2c)
sp = 0xd782ec98 fp = 0xd782eca8
r4 = 0xc3941780 r5 = 0xc3b28600
r6 = 0xd782ecf0 r7 = 0xc0155bc0
r8 = 0xc07baa00 r9 = 0xc06ee710
r10 = 0xc0799ad0
$a.35() at $a.35+0x2c
pc = 0xc0155bec lr = 0xc0155028 ($a.9+0x100)
sp = 0xd782ecb0 fp = 0xd782ece8
r7 = 0xc0155bc0 r8 = 0x000000d0
r9 = 0xc06e0008 r10 = 0xd782ecb0
$a.9() at $a.9+0x100
pc = 0xc0155028 lr = 0xc0303890 (resettodr+0xe4)
sp = 0xd782ecf0 fp = 0xd782ed08
r4 = 0xc3941780 r5 = 0xc05e650c
r6 = 0x00000000 r7 = 0x00000094
resettodr() at resettodr+0xe4
pc = 0xc0303890 lr = 0xc02a8df4 ($a.27+0x44)
sp = 0xd782ed10 fp = 0xd782ed18
r0 = 0x571c9af6 r1 = 0x00000000
r2 = 0x00000000 r3 = 0x00000000
r4 = 0xc07ba6ac r10 = 0xc0799ad0
$a.27() at $a.27+0x44
pc = 0xc02a8df4 lr = 0xc02d7788 ($a.4+0x18c)
sp = 0xd782ed20 fp = 0xd782ed98
r4 = 0xc02a73dc r5 = 0xc07ba9d0
$a.4() at $a.4+0x18c
pc = 0xc02d7788 lr = 0xc02d7b70 (softclock+0x54)
sp = 0xd782eda0 fp = 0xd782edb0
r4 = 0xc07ba9d0 r5 = 0xc07ba9c0
r6 = 0xc02d75fc r7 = 0xc028afd8
r8 = 0xc3921580 r9 = 0xc05e1d93
r10 = 0xc3937a00
softclock() at softclock+0x54
pc = 0xc02d7b70 lr = 0xc028b0e0 (intr_event_execute_handlers+0x108)
sp = 0xd782edb8 fp = 0xd782edd8
r4 = 0x00000000 r5 = 0xc3937a48
r6 = 0xc39215ac r10 = 0xc3937a00
intr_event_execute_handlers() at intr_event_execute_handlers+0x108
pc = 0xc028b0e0 lr = 0xc028b924 ($a.47+0x11c)
sp = 0xd782ede0 fp = 0xd782ee28
r3 = 0xc07ba6ac r4 = 0xc3937a70
r5 = 0xc07bae40 r6 = 0xc3937a00
r7 = 0xc028afd8 r8 = 0xc391bd7c
r9 = 0x00000000 r10 = 0xc06e7550
$a.47() at $a.47+0x11c
pc = 0xc028b924 lr = 0xc02886cc (fork_exit+0xa4)
sp = 0xd782ee30 fp = 0xd782ee48
r4 = 0xc3a5e370 r5 = 0xc3a5b720
r6 = 0xc028b808 r7 = 0xc02a73dc
r8 = 0xd782ee50 r9 = 0xc391bd70
r10 = 0x00000000
fork_exit() at fork_exit+0xa4
pc = 0xc02886cc lr = 0xc055b3cc (swi_exit)
sp = 0xd782ee50 fp = 0x00000000
r4 = 0xc028b808 r5 = 0xc391bd70
r6 = 0x00000000 r7 = 0x00000000
r8 = 0x00000000 r9 = 0x00000000
swi_exit() at swi_exit
pc = 0xc055b3cc lr = 0xc055b3cc (swi_exit)
sp = 0xd782ee50 fp = 0x00000000
db>
More information about the freebsd-arm
mailing list