Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Aug 2015 19:33:41 -0700
From:      bob prohaska <fbsd@www.zefox.net>
To:        freebsd-arm@FreeBSD.org
Subject:   Crash during installworld on RPI2
Message-ID:  <20150824023341.GA53136@www.zefox.net>

next in thread | raw e-mail | index | archive | help
For the third time in about as many weeks 11-Current has crashed during installworld.
This represents about one in five tries. In every case the crash is triggered by
writing to the DOS partition of the microSD card. The latest instance is at

FreeBSD www.zefox.org 11.0-CURRENT FreeBSD 11.0-CURRENT #40 r287009M: Sat Aug 22 07:48:40 PDT 2015     bob@www.zefox.org:/usr/obj/usr/src/sys/RPI2  arm 

All three crashes have been preceeded by a stream of warnings similar to
smsc0: warning: MII read timeout
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to write register 0x114
smsc0: warning: Failed to write register 0x114
usually starting during buildworld and not always crashing; most attempts succeed.

The kernel config is default, /etc/fstab contains
/dev/mmcsd0s1   /boot/msdos     msdosfs rw,noatime      0 0
/dev/mmcsd0s2a  /               ufs rw,noatime          1 1
#md             /tmp            mfs rw,noatime,-s50m    0 0
#md             /var/log        mfs rw,noatime,-s15m    0 0
#md             /var/tmp        mfs rw,noatime,-s5m     0 0
/dev/da0p4      /tmp            ufs rw,noatime          0 0
/dev/da0p3      /usr            ufs rw,noatime,late,failok              1 2
/dev/da0p2      none            swap    sw                              0 0
/dev/da0p1      /var            ufs rw,noatime          0 0

mmcsd0 is a Sandisk Ultra 8 GB class 10 microSD card, da0 is an old 32GB 
ATA drive in a usb2.0 enclosure.

The end of the console output and backtrace follow. I'm not skilled enough to
interpret the output but I hope it's of use to others.

smsc0: warning: MII read timeout
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to write register 0x114
smsc0: warning: Failed to write register 0x114
sdhci_bcm0-slot0:  Controller timeout
sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
sdhci_bcm0-slot0: Sys addr: 0x02148a00 | Version:  0x00009902
sdhci_bcm0-slot0: Blk size: 0x00000200 | Blk cnt:  0x00000096
sdhci_bcm0-slot0: Argument: 0x001730c0 | Trn mode: 0x0000193a
sdhci_bcm0-slot0: Present:  0x01ff0506 | Host ctl: 0x00000003
sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00000307
sdhci_bcm0-slot0: Timeout:  0x0000000e | Int stat: 0x00000010
sdhci_bcm0-slot0: Int enab: 0x01ff00fb | Sig enab: 0x01ff00fb
sdhci_bcm0-slot0: AC12 err: 0x00000000 | Slot int: 0x00000001
sdhci_bcm0-slot0: Caps:     0x00000000 | Max curr: 0x00000001
sdhci_bcm0-slot0: ===========================================
mmcsd0: Error indicated: 1 Timeout
g_vfs_done():mmcsd0s2a[WRITE(offset=725647360, length=131072)]error = 5
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
g_vfs_done():mmcsd0s2a[WRITE(offset=725778432, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=725909504, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=726040576, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=726171648, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=726302720, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=726433792, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=726564864, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=726695936, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=726827008, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=726958080, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=727089152, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=727220224, length=131072)]error = 5
g_vfs_done():mmcsd0s2a[WRITE(offset=20932096, length=512)]error = 5
panic: brelse: inappropriate B_PAGING or B_CLUSTER bp 0xd76fc2d0
cpuid = 0
KDB: enter: panic
[ thread pid 12 tid 100014 ]
Stopped at      $d.7:   ldrb    r15, [r15, r15, ror r15]!
db> bt
Tracing pid 12 tid 100014 td 0xc39fd360
db_trace_self() at db_trace_self
         pc = 0xc053f010  lr = 0xc0140fec (db_stack_trace+0x108)
         sp = 0xd69e19d8  fp = 0xd69e19f0
        r10 = 0xc07745f8
db_stack_trace() at db_stack_trace+0x108
         pc = 0xc0140fec  lr = 0xc0140a38 (db_command+0x388)
         sp = 0xd69e19f8  fp = 0xd69e1a98
         r4 = 0x00000000  r5 = 0x00000000
         r6 = 0x00000000 r10 = 0xc07745f8
db_command() at db_command+0x388
         pc = 0xc0140a38  lr = 0xc01406a0 (db_command_loop+0x74)
         sp = 0xd69e1aa0  fp = 0xd69e1ab0
         r4 = 0xc05a3ab0  r5 = 0xc05c48a6
         r6 = 0xc07745e4  r7 = 0xd69e1c80
         r8 = 0xc0769620  r9 = 0xc0687764
        r10 = 0xc0769624
db_command_loop() at db_command_loop+0x74
         pc = 0xc01406a0  lr = 0xc01431d0 (db_trap+0x108)
         sp = 0xd69e1ab8  fp = 0xd69e1bd0
         r4 = 0x00000000  r5 = 0xc07745f0
         r6 = 0xc0769648 r10 = 0xc0769624
db_trap() at db_trap+0x108
         pc = 0xc01431d0  lr = 0xc02e89b8 (kdb_trap+0x184)
         sp = 0xd69e1bd8  fp = 0xd69e1c00
         r4 = 0x00000000  r5 = 0x00000001
         r6 = 0xc0769648  r7 = 0xd69e1c80
kdb_trap() at kdb_trap+0x184
         pc = 0xc02e89b8  lr = 0xc05570ac (undefinedinstruction+0x344)
         sp = 0xd69e1c08  fp = 0xd69e1c78
         r4 = 0x00000000  r5 = 0x00000000
         r6 = 0xc0556cb8  r7 = 0xe7ffffff
         r8 = 0xc39fd360  r9 = 0xc02e8110
        r10 = 0xd69e1c80
undefinedinstruction() at undefinedinstruction+0x344
         pc = 0xc05570ac  lr = 0xc0540698 (exception_exit)
         sp = 0xd69e1c80  fp = 0xd69e1d18
         r4 = 0xc05c48fb  r5 = 0x00000001
         r6 = 0xc075a0e0  r7 = 0xc075a278
         r8 = 0xd69e1d6c  r9 = 0xc0775e08
        r10 = 0xc39fd360
exception_exit() at exception_exit
         pc = 0xc0540698  lr = 0xc02e8100 (kdb_enter+0x48)
         sp = 0xd69e1d10  fp = 0xd69e1d18
         r0 = 0xc0769634  r1 = 0x00000000
         r2 = 0xd69e1c44  r3 = 0xc05c87c4
         r4 = 0xc05c48fb  r5 = 0x00000001
         r6 = 0xc075a0e0  r7 = 0xc075a278
         r8 = 0xd69e1d6c  r9 = 0xc0775e08
        r10 = 0xc39fd360 r12 = 0xc06a2448
$a.8() at $a.8
         pc = 0xc02e8114  lr = 0xc02ac40c (vpanic+0x164)
         sp = 0xd69e1d20  fp = 0xd69e1d40
         r4 = 0x00000100 r10 = 0xc39fd360
vpanic() at vpanic+0x164
         pc = 0xc02ac40c  lr = 0xc02ac2a8 (vpanic)
         sp = 0xd69e1d48  fp = 0xd69e1d60
         r4 = 0xc075a178  r5 = 0xc05d0e17
         r6 = 0xd69e1d6c  r7 = 0xc075a0e0
         r8 = 0xc077522c  r9 = 0xc05b6589
        r10 = 0x00000000
vpanic() at vpanic
         pc = 0xc02ac2a8  lr = 0xc0338f18 (brelse+0x6f0)
         sp = 0xd69e1d68  fp = 0xd69e1dd8
         r4 = 0xc02ac2a8  r5 = 0x00000001
         r6 = 0xd69e1d6c  r7 = 0xd76fc2d0
         r8 = 0xc42c93d4  r9 = 0xd76fc2d0
        r10 = 0xc0758184
brelse() at brelse+0x6f0
         pc = 0xc0338f18  lr = 0xc033c77c (bufdone+0x58)
         sp = 0xd69e1de0  fp = 0xd69e1de8
         r4 = 0xd76fc2d0  r5 = 0xc42c93d4
         r6 = 0xc0758140  r7 = 0xc0758184
         r8 = 0xc077522c  r9 = 0xc05b6589
        r10 = 0x00000000
bufdone() at bufdone+0x58
         pc = 0xc033c77c  lr = 0xc023c3a4 (g_io_schedule_up+0xe4)
         sp = 0xd69e1df0  fp = 0xd69e1e20
         r4 = 0xc05b88cf  r5 = 0xc700c348
g_io_schedule_up() at g_io_schedule_up+0xe4
         pc = 0xc023c3a4  lr = 0xc023cacc (g_up_procbody+0x78)
         sp = 0xd69e1e28  fp = 0xd69e1e30
         r4 = 0xc05b8cf1  r5 = 0xc07581ac
         r6 = 0xc023ca54  r7 = 0x00000000
         r8 = 0xd69e1e58  r9 = 0x00000000
        r10 = 0x00000000
g_up_procbody() at g_up_procbody+0x78
         pc = 0xc023cacc  lr = 0xc027a544 (fork_exit+0xa0)
         sp = 0xd69e1e38  fp = 0xd69e1e50
         r4 = 0xc39fd360  r5 = 0xc3958000
fork_exit() at fork_exit+0xa0
         pc = 0xc027a544  lr = 0xc0540628 (swi_exit)
         sp = 0xd69e1e58  fp = 0x00000000
         r4 = 0xc023ca54  r5 = 0x00000000
         r6 = 0x00000000  r7 = 0x00000000
         r8 = 0x00000000 r10 = 0x00000000
swi_exit() at swi_exit
         pc = 0xc0540628  lr = 0xc0540628 (swi_exit)
         sp = 0xd69e1e58  fp = 0x00000000
db>  


Thanks for reading and any guidance,

bob prohaska




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150824023341.GA53136>