https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292314
Bug ID: 292314
Summary: Panic on shutdown -r for current armv7 on raspberry pi
2b
Product: Base System
Version: CURRENT
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: arm
Assignee: [email protected]
Reporter: [email protected]
A pair of Raspberry Pi2b v1.1 (so, armv7) hosts crash on shutdown -r, ending in
the debugger. The crash messages differ, the only obvious difference is the
hard disk type, usb3-sata vs usb2-pata.
The first machine is running:
bob@pelorus:~ % uname -a
FreeBSD pelorus.zefox.org 16.0-CURRENT FreeBSD 16.0-CURRENT #13
main-n282791-2eec2bcca297: Sat Jan 3 14:10:46 PST 2026
[email protected]:/usr/obj/usr/src/arm.armv7/sys/GENERIC arm
bob@pelorus:~ % uname -KU
1600007 1600007
bob@pelorus:~ %
Root is on a 1 TB mechanical hard disk via a usb3-sata bridge, boot is via
bootcode.bin on microSD.
root@pelorus:~ # shutdown -r now
Shutdown NOW!
shutdown: [pid 10103]
root@pelorus:~ #
*** FINAL System shutdown message from [email protected] ***
Stopping cron.
Waiting for PIDS: 2101.
Stopping sendmail.
Waiting for PIDS: 2106.
Stopping sendmail_msp_queue.
Waiting for PIDS: 2109.
Stopping sshd.
Waiting for PIDS: 2126.
Stopping powerd.
Waiting for PIDS: 2054.
Stopping devd.
Waiting for PIDS: 1630.
Writing entropy file: .
Writing early boot entropy file: .
.
Terminated
Jan 9 14:47:32 pelorus syslogd: exiting on signal 15
Waiting (max 60 seconds) for system process `vnlru' to stop... done
Waiting (max 60 seconds) for system process `syncer' to stop...
Syncing disks, vnodes remaining... 0 0 0 done
All buffers synced.
Uptime: 21h49m26s
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
ue0: link state changed to DOWN
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smscphy0: detached
Kernel page fault with the following non-sleepable locks held:
exclusive sleep mutex smsc0 (smsc0) r = 0 (0xd6a92570) locked @
/usr/src/sys/dev/usb/net/if_smsc.c:665
stack backtrace:
#0 0xc0382714 at witness_debugger+0x78
#1 0xc03839c0 at witness_warn+0x428
#2 0xc064dd18 at abort_handler+0x1d4
#3 0xc062c32c at exception_exit+0
#4 0xc00d587c at smscphy_status+0x80
#5 0xc00d57e4 at smscphy_service+0x21c
#6 0xc00ce240 at mii_pollstat+0x60
#7 0xc01b57d8 at smsc_ifmedia_sts+0x44
#8 0xc04524d8 at ifmedia_ioctl+0x198
#9 0xc0525ea8 at dump_iface+0x11c
#10 0xc0525c94 at rtnl_handle_iflink+0x9c
#11 0xc0449f20 at do_link_state_change+0x1e4
#12 0xc03744d4 at taskqueue_run_locked+0x1b4
#13 0xc03742e4 at taskqueue_run+0x50
#14 0xc02c15a0 at ithread_loop+0x264
#15 0xc02bd424 at fork_exit+0xa0
#16 0xc062c2c0 at swi_exit+0
Fatal kernel mode data abort: 'Translation Fault (L1)' on read
trapframe: 0xd3ab0b28
FSR=00000005, FAR=00000000, spsr=60000013
r0 =0000003d, r1 =bdfa140f, r2 =bdfa140f, r3 =00000000
r4 =d7499000, r5 =00000000, r6 =00000000, r7 =00000001
r8 =d749f0c0, r9 =c091e518, r10=00000000, r11=d3ab0bd8
r12=d3ab0adc, ssp=d3ab0bb8, slr=c01b3a80, pc =c00d587c
timeout stopping cpus
panic: Fatal abort
cpuid = 0
time = 1767998859
KDB: stack backtrace:
db_trace_self() at db_trace_self
pc = 0xc0629b70 lr = 0xc0077388 (db_trace_self_wrapper+0x30)
sp = 0xd3ab0900 fp = 0xd3ab0a18
db_trace_self_wrapper() at db_trace_self_wrapper+0x30
pc = 0xc0077388 lr = 0xc0309270 (vpanic+0x140)
sp = 0xd3ab0a20 fp = 0xd3ab0a40
r4 = 0x00000100 r5 = 0x00000000
r6 = 0xc0721f4b r7 = 0xc0b7a8e4
vpanic() at vpanic+0x140
pc = 0xc0309270 lr = 0xc0309130 (vpanic)
sp = 0xd3ab0a48 fp = 0xd3ab0a4c
r4 = 0xd3ab0b28 r5 = 0x00000013
r6 = 0x00000000 r7 = 0x00000005
r8 = 0x00000005 r9 = 0x00000013
r10 = 0x00000000
vpanic() at vpanic
pc = 0xc0309130 lr = 0xc064e2fc (abort_align)
sp = 0xd3ab0a54 fp = 0xd3ab0a80
r4 = 0x00000005 r5 = 0x00000005
r6 = 0x00000013 r7 = 0x00000000
r8 = 0xd3ab0a4c r9 = 0xc0309130
r10 = 0xd3ab0a54
abort_align() at abort_align
pc = 0xc064e2fc lr = 0xc064de44 (abort_handler+0x300)
sp = 0xd3ab0a88 fp = 0xd3ab0b20
r4 = 0xc4f0dc00 r10 = 0x00000000
abort_handler() at abort_handler+0x300
pc = 0xc064de44 lr = 0xc062c32c (exception_exit)
sp = 0xd3ab0b28 fp = 0xd3ab0bd8
r4 = 0xd7499000 r5 = 0x00000000
r6 = 0x00000000 r7 = 0x00000001
r8 = 0xd749f0c0 r9 = 0xc091e518
r10 = 0x00000000
exception_exit() at exception_exit
pc = 0xc062c32c lr = 0xc01b3a80 (smsc_miibus_readreg+0x74)
sp = 0xd3ab0bb8 fp = 0xd3ab0bd8
r0 = 0x0000003d r1 = 0xbdfa140f
r2 = 0xbdfa140f r3 = 0x00000000
r4 = 0xd7499000 r5 = 0x00000000
r6 = 0x00000000 r7 = 0x00000001
r8 = 0xd749f0c0 r9 = 0xc091e518
r10 = 0x00000000 r12 = 0xd3ab0adc
smscphy_status() at smscphy_status+0x80
pc = 0xc00d587c lr = 0xc00d57e4 (smscphy_service+0x21c)
sp = 0xd3ab0be0 fp = 0xd3ab0c00
r4 = 0x00000003 r5 = 0xd7499000
r6 = 0xd74a0fa0 r7 = 0xc0731d8a
r8 = 0x00000000 r9 = 0xc097a888
r10 = 0x00000000
smscphy_service() at smscphy_service+0x21c
pc = 0xc00d57e4 lr = 0xc00ce240 (mii_pollstat+0x60)
sp = 0xd3ab0c08 fp = 0xd3ab0c18
r4 = 0xd749f0c0 r5 = 0xd7499000
r6 = 0xd74a0fa0 r7 = 0xc0731d8a
r8 = 0x00000000 r9 = 0xc097a888
r10 = 0x00000000
mii_pollstat() at mii_pollstat+0x60
pc = 0xc00ce240 lr = 0xc01b57d8 (smsc_ifmedia_sts+0x44)
sp = 0xd3ab0c20 fp = 0xd3ab0c30
r4 = 0xd3ab0c78 r5 = 0xd6a92580
r6 = 0xd749f0c0 r10 = 0x00000000
smsc_ifmedia_sts() at smsc_ifmedia_sts+0x44
pc = 0xc01b57d8 lr = 0xc04524d8 (ifmedia_ioctl+0x198)
sp = 0xd3ab0c38 fp = 0xd3ab0c48
r4 = 0xd3ab0c78 r5 = 0x00000000
r6 = 0xd749f0c0 r7 = 0x00000020
ifmedia_ioctl() at ifmedia_ioctl+0x198
pc = 0xc04524d8 lr = 0xc0525ea8 (dump_iface+0x11c)
sp = 0xd3ab0c50 fp = 0xd3ab0cc0
r4 = 0xd3ab0cd4 r5 = 0xd7495c00
r6 = 0xd3ab0c78 r7 = 0xdaf91024
dump_iface() at dump_iface+0x11c
pc = 0xc0525ea8 lr = 0xc0525c94 (rtnl_handle_iflink+0x9c)
sp = 0xd3ab0cc8 fp = 0xd3ab0d18
r4 = 0xd7495c00 r5 = 0xd3ab0cd4
r6 = 0x00000000 r7 = 0xd3cae800
r8 = 0x00000001 r9 = 0x00000000
r10 = 0xd6cd19e0
rtnl_handle_iflink() at rtnl_handle_iflink+0x9c
pc = 0xc0525c94 lr = 0xc0449f20 (do_link_state_change+0x1e4)
sp = 0xd3ab0d20 fp = 0xd3ab0d48
r4 = 0xd7495c00 r5 = 0xc0777af9
r6 = 0xd3cae81c r10 = 0xd6cd19e0
do_link_state_change() at do_link_state_change+0x1e4
pc = 0xc0449f20 lr = 0xc03744d4 (taskqueue_run_locked+0x1b4)
sp = 0xd3ab0d50 fp = 0xd3ab0da0
r4 = 0xd3d67800 r5 = 0xd3d67850
r6 = 0xd7495cf8 r7 = 0x00000001
r8 = 0x00000000 r9 = 0xc0783a61
r10 = 0x00000000
taskqueue_run_locked() at taskqueue_run_locked+0x1b4
pc = 0xc03744d4 lr = 0xc03742e4 (taskqueue_run+0x50)
sp = 0xd3ab0da8 fp = 0xd3ab0db0
r4 = 0xd3d67850 r5 = 0xd3d67800
r6 = 0xd3b6a200 r7 = 0xc3593a40
r8 = 0x00000000 r9 = 0xc07635e8
r10 = 0xd3b6a208
taskqueue_run() at taskqueue_run+0x50
pc = 0xc03742e4 lr = 0xc02c15a0 (ithread_loop+0x264)
sp = 0xd3ab0db8 fp = 0xd3ab0e18
r4 = 0x00000000 r5 = 0xd3b6a244
ithread_loop() at ithread_loop+0x264
pc = 0xc02c15a0 lr = 0xc02bd424 (fork_exit+0xa0)
sp = 0xd3ab0e20 fp = 0xd3ab0e38
r4 = 0xd3ab0e40 r5 = 0xc4f0dc00
r6 = 0xc02c133c r7 = 0xc4f0a000
r8 = 0xc3596d00 r9 = 0x00000000
r10 = 0x00000000
fork_exit() at fork_exit+0xa0
pc = 0xc02bd424 lr = 0xc062c2c0 (swi_exit)
sp = 0xd3ab0e40 fp = 0x00000000
r4 = 0xc02c133c r5 = 0xc3596d00
r6 = 0x00000000 r7 = 0x00000000
r8 = 0x00000000 r10 = 0x00000000
swi_exit() at swi_exit
pc = 0xc062c2c0 lr = 0xc062c2c0 (swi_exit)
sp = 0xd3ab0e40 fp = 0x00000000
KDB: enter: panic
[ thread pid 11 tid 100013 ]
Stopped at kdb_enter+0x54: ldrb r15, [r15, r15, ror r15]!
db>
A second raspberry pi2b running armv7 also crashes under the same conditions
but with a slightly different error. This machine uses an old usb2-pata bridge
to a mechanical hard drive of 32 GB capacity. The machine is running
bob@www:~ % uname -a
FreeBSD www.zefox.org 16.0-CURRENT FreeBSD 16.0-CURRENT #5
main-n282933-6c0bcd15e478: Wed Jan 7 20:01:40 PST 2026
[email protected]:/usr/obj/usr/src/arm.armv7/sys/GENERIC arm
bob@www:~ % uname -KU
1600007 1600007
bob@www:~ %
root@www:~ # shutdown -r now
Shutdown NOW!
shutdown: [pid 5722]
root@www:~ #
*/etc/rc.shutdown: WARNING: $ftpd_enable is not set properly - see rc.conf(5).
Stopping sshd.
Waiting for PIDS: 3469.
Stopping sendmail.
Waiting for PIDS: 3474.
Stopping sendmail_msp_queue.
Waiting for PIDS: 3477.
Stopping powerd.
Waiting for PIDS: 3394.
/etc/rc.shutdown: WARNING: $keyserv_enable is not set properly - see
rc.conf(5).
Stopping devd.
Waiting for PIDS: 3207.
Writing entropy file: .
Writing early boot entropy file: .
.
Terminated
Jan 9 15:55:36 www syslogd: exiting on signal 15
Waiting (max 60 seconds) for system process `vnlru' to stop... done
Waiting (max 60 seconds) for system process `syncer' to stop... Syncing disks,
vnodes remaining... 1 0 done
All buffers synced.
Uptime: 23h8m53s
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
ue0: link state changed to DOWN
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smsc0: warning: MII is busy
smsc0: warning: Failed to read register 0x114
smscphy0: detached
smsc0: warning: MII is busy
Kernel page faultmiibus0: detached
with the following non-sleepable locks held:
exclusive sleep mutex smsc0 (smsc0) r = 0 (0xd6a8d570) locked @
/usr/src/sys/dev/usb/net/if_smsc.c:665
stack backtrace:
#0 0xc0381c70 at witness_debugger+0x78
#1 0xc0382f1c at witness_warn+0x428
#2 0xc064d298 at abort_handler+0x1d4
#3 0xc062b8f0 at exception_exit+0
#4 0xc00d587c at smscphy_status+0x80
#5 0xc00d57e4 at smscphy_service+0x21c
#6 0xc00ce240 at mii_pollstat+0x60
#7 0xc01b4d20 at smsc_ifmedia_sts+0x44
#8 0xc0451a34 at ifmedia_ioctl+0x198
#9 0xc052546c at dump_iface+0x11c
#10 0xc0525258 at rtnl_handle_iflink+0x9c
#11 0xc044947c at do_link_state_change+0x1e4
#12 0xc0373a30 at taskqueue_run_locked+0x1b4
#13 0xc0373840 at taskqueue_run+0x50
#14 0xc02c0afc at ithread_loop+0x264
#15 0xc02bc980 at fork_exit+0xa0
#16 0xc062b884 at swi_exit+0
Fatal kernel mode data abort: 'Translation Fault (L1)' on read
trapframe: 0xd3ab4b28
FSR=00000005, FAR=deadc0de, spsr=60000013
r0 =0000003d, r1 =9c106320, r2 =9c106320, r3 =00000000
r4 =d741df00, r5 =00000000, r6 =deadc0de, r7 =deadc0de
r8 =d7425080, r9 =c091e518, r10=00000000, r11=d3ab4bd8
r12=d3ab4adc, ssp=d3ab4bb8, slr=c01b2fc8, pc =c00d587c
panic: Fatal abort
cpuid = 0
time = 1768002938
KDB: stack backtrace:
db_trace_self() at db_trace_self
pc = 0xc0629134 lr = 0xc0077388 (db_trace_self_wrapper+0x30)
sp = 0xd3ab4900 fp = 0xd3ab4a18
db_trace_self_wrapper() at db_trace_self_wrapper+0x30
pc = 0xc0077388 lr = 0xc03087cc (vpanic+0x140)
sp = 0xd3ab4a20 fp = 0xd3ab4a40
r4 = 0x00000100 r5 = 0x00000000
r6 = 0xc0721459 r7 = 0xc0b7a8c4
vpanic() at vpanic+0x140
pc = 0xc03087cc lr = 0xc030868c (vpanic)
sp = 0xd3ab4a48 fp = 0xd3ab4a4c
r4 = 0xd3ab4b28 r5 = 0x00000013
r6 = 0xdeadc0de r7 = 0x00000005
r8 = 0x00000005 r9 = 0x00000013
r10 = 0xdeadc0de
vpanic() at vpanic
pc = 0xc030868c lr = 0xc064d87c (abort_align)
sp = 0xd3ab4a54 fp = 0xd3ab4a80
r4 = 0x00000005 r5 = 0x00000005
r6 = 0x00000013 r7 = 0xdeadc0de
r8 = 0xd3ab4a4c r9 = 0xc030868c
r10 = 0xd3ab4a54
abort_align() at abort_align
pc = 0xc064d87c lr = 0xc064d3c4 (abort_handler+0x300)
sp = 0xd3ab4a88 fp = 0xd3ab4b20
r4 = 0xc4f0dc00 r10 = 0xdeadc0de
abort_handler() at abort_handler+0x300
pc = 0xc064d3c4 lr = 0xc062b8f0 (exception_exit)
sp = 0xd3ab4b28 fp = 0xd3ab4bd8
r4 = 0xd741df00 r5 = 0x00000000
r6 = 0xdeadc0de r7 = 0xdeadc0de
r8 = 0xd7425080 r9 = 0xc091e518
r10 = 0x00000000
exception_exit() at exception_exit
pc = 0xc062b8f0 lr = 0xc01b2fc8 (smsc_miibus_readreg+0x74)
sp = 0xd3ab4bb8 fp = 0xd3ab4bd8
r0 = 0x0000003d r1 = 0x9c106320
r2 = 0x9c106320 r3 = 0x00000000
r4 = 0xd741df00 r5 = 0x00000000
r6 = 0xdeadc0de r7 = 0xdeadc0de
r8 = 0xd7425080 r9 = 0xc091e518
r10 = 0x00000000 r12 = 0xd3ab4adc
smscphy_status() at smscphy_status+0x80
pc = 0xc00d587c lr = 0xc00d57e4 (smscphy_service+0x21c)
sp = 0xd3ab4be0 fp = 0xd3ab4c00
r4 = 0x00000003 r5 = 0xd741df00
r6 = 0xd7432000 r7 = 0xc0731240
r8 = 0x00000000 r9 = 0xc097a7b0
r10 = 0x00000000
smscphy_service() at smscphy_service+0x21c
pc = 0xc00d57e4 lr = 0xc00ce240 (mii_pollstat+0x60)
sp = 0xd3ab4c08 fp = 0xd3ab4c18
r4 = 0xd7425080 r5 = 0xd741df00
r6 = 0xd7432000 r7 = 0xc0731240
r8 = 0x00000000 r9 = 0xc097a7b0
r10 = 0x00000000
mii_pollstat() at mii_pollstat+0x60
pc = 0xc00ce240 lr = 0xc01b4d20 (smsc_ifmedia_sts+0x44)
sp = 0xd3ab4c20 fp = 0xd3ab4c30
r4 = 0xd3ab4c78 r5 = 0xd6a8d580
r6 = 0xd7425080 r10 = 0x00000000
smsc_ifmedia_sts() at smsc_ifmedia_sts+0x44
pc = 0xc01b4d20 lr = 0xc0451a34 (ifmedia_ioctl+0x198)
sp = 0xd3ab4c38 fp = 0xd3ab4c48
r4 = 0xd3ab4c78 r5 = 0x00000000
r6 = 0xd7425080 r7 = 0x00000020
ifmedia_ioctl() at ifmedia_ioctl+0x198
pc = 0xc0451a34 lr = 0xc052546c (dump_iface+0x11c)
sp = 0xd3ab4c50 fp = 0xd3ab4cc0
r4 = 0xd3ab4cd4 r5 = 0xd7416c00
r6 = 0xd3ab4c78 r7 = 0xdafdf024
dump_iface() at dump_iface+0x11c
pc = 0xc052546c lr = 0xc0525258 (rtnl_handle_iflink+0x9c)
sp = 0xd3ab4cc8 fp = 0xd3ab4d18
r4 = 0xd7416c00 r5 = 0xd3ab4cd4
r6 = 0x00000000 r7 = 0xd3cae800
r8 = 0x00000001 r9 = 0x00000000
r10 = 0xd6ccea00
rtnl_handle_iflink() at rtnl_handle_iflink+0x9c
pc = 0xc0525258 lr = 0xc044947c (do_link_state_change+0x1e4)
sp = 0xd3ab4d20 fp = 0xd3ab4d48
r4 = 0xd7416c00 r5 = 0xc0776ed6
r6 = 0xd3cae81c r10 = 0xd6ccea00
do_link_state_change() at do_link_state_change+0x1e4
pc = 0xc044947c lr = 0xc0373a30 (taskqueue_run_locked+0x1b4)
sp = 0xd3ab4d50 fp = 0xd3ab4da0
r4 = 0xd3d67800 r5 = 0xd3d67850
r6 = 0xd7416cf8 r7 = 0x00000001
r8 = 0x00000000 r9 = 0xc0782db1
r10 = 0x00000000
taskqueue_run_locked() at taskqueue_run_locked+0x1b4
pc = 0xc0373a30 lr = 0xc0373840 (taskqueue_run+0x50)
sp = 0xd3ab4da8 fp = 0xd3ab4db0
r4 = 0xd3d67850 r5 = 0xd3d67800
r6 = 0xd3b6a200 r7 = 0xc3593a40
r8 = 0x00000000 r9 = 0xc0762a0a
r10 = 0xd3b6a208
taskqueue_run() at taskqueue_run+0x50
pc = 0xc0373840 lr = 0xc02c0afc (ithread_loop+0x264)
sp = 0xd3ab4db8 fp = 0xd3ab4e18
r4 = 0x00000000 r5 = 0xd3b6a244
ithread_loop() at ithread_loop+0x264
pc = 0xc02c0afc lr = 0xc02bc980 (fork_exit+0xa0)
sp = 0xd3ab4e20 fp = 0xd3ab4e38
r4 = 0xd3ab4e40 r5 = 0xc4f0dc00
r6 = 0xc02c0898 r7 = 0xc4f0a000
r8 = 0xc3596d20 r9 = 0x00000000
r10 = 0x00000000
fork_exit() at fork_exit+0xa0
pc = 0xc02bc980 lr = 0xc062b884 (swi_exit)
sp = 0xd3ab4e40 fp = 0x00000000
r4 = 0xc02c0898 r5 = 0xc3596d20
r6 = 0x00000000 r7 = 0x00000000
r8 = 0x00000000 r10 = 0x00000000
swi_exit() at swi_exit
pc = 0xc062b884 lr = 0xc062b884 (swi_exit)
sp = 0xd3ab4e40 fp = 0x00000000
KDB: enter: panic
[ thread pid 11 tid 100013 ]
Stopped at kdb_enter+0x54: ldrb r15, [r15, r15, ror r15]!
db>
Issuing a reboot command to the debugger successfully restarts the machine.
--
You are receiving this mail because:
You are the assignee for the bug.
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.