Panic on Rpi3 at r358976

Mark Millard marklmi at yahoo.com
Sun Mar 15 04:49:04 UTC 2020



On 2020-Mar-14, at 21:12, bob prohaska <fbsd at www.zefox.net> wrote:

> Tried to boot a kernel built from r358976 on a Pi3 and got a panic:
> 
> 
> Copyright (c) 1992-2020 The FreeBSD Project.
> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
> 	The Regents of the University of California. All rights reserved.
> FreeBSD is a registered trademark of The FreeBSD Foundation.
> FreeBSD 13.0-CURRENT #4 r358976: Sat Mar 14 17:00:27 PDT 2020
>    bob at www.zefox.org:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC arm64
> FreeBSD clang version 10.0.0 (git at github.com:llvm/llvm-project.git llvmorg-10.0.0-rc3-1-gc290cb61fdc)
> WARNING: WITNESS option enabled, expect reduced performance.
> VT(efifb): resolution 1920x1200
> module firmware already present!
> KLD file umodem.ko is missing dependencies
> Starting CPU 1 (1)
> panic: Failed to start CPU 1 (1)
> 
> cpuid = 0
> time = 1
> KDB: stack backtrace:
> db_trace_self() at db_trace_self_wrapper+0x28
> 	 pc = 0xffff00000075a214  lr = 0xffff000000108928
> 	 sp = 0xffff0000000105a0  fp = 0xffff0000000107a0
> 
> db_trace_self_wrapper() at vpanic+0x194
> 	 pc = 0xffff000000108928  lr = 0xffff000000414578
> 	 sp = 0xffff0000000107b0  fp = 0xffff000000010800
> 
> vpanic() at panic+0x44
> 	 pc = 0xffff000000414578  lr = 0xffff000000414320
> 	 sp = 0xffff000000010810  fp = 0xffff0000000108c0
> 
> panic() at start_cpu+0x1b0
> 	 pc = 0xffff000000414320  lr = 0xffff00000076845c
> 	 sp = 0xffff0000000108d0  fp = 0xffff0000000108d0
> 
> start_cpu() at cpu_init_fdt+0x34
> 	 pc = 0xffff00000076845c  lr = 0xffff000000767854
> 	 sp = 0xffff0000000108e0  fp = 0xffff000000010930
> 
> cpu_init_fdt() at ofw_cpu_early_foreach+0x180
> 	 pc = 0xffff000000767854  lr = 0xffff00000020bb2c
> 	 sp = 0xffff000000010940  fp = 0xffff000000010990
> 
> ofw_cpu_early_foreach() at mp_start+0x8c
> 	 pc = 0xffff00000020bb2c  lr = 0xffff00000046f8dc
> 	 sp = 0xffff0000000109a0  fp = 0xffff0000000109f0
> 
> mp_start() at mi_startup+0x12c
> 	 pc = 0xffff00000046f8dc  lr = 0xffff0000003a88a0
> 	 sp = 0xffff000000010a00  fp = 0xffff000000010a20
> 
> mi_startup() at virtdone+0x5c
> 	 pc = 0xffff0000003a88a0  lr = 0xffff00000000108c
> 	 sp = 0xffff000000010a30  fp = 0x0000000000000000
> 
> KDB: enter: panic
> [ thread pid 0 tid 0 ]
> Stopped at      0
> db> reboot
> cpu_reset failed
> 
> The Pi3 started at r351836, src was updated to r358976 and
> only the kernel-toolchain and kernel were built/installed. 
> 
> If this is worth a bug report please let me know.

Have you done something to deal with the kernel not being
told to avoid touching memory that holds armstub8.bin ?
You do not mention such.

I'm not aware of any changes to sysutils/u-boot-rpi3 or
to sysutils/rpi-firmware ( via its armstub8.bin ) or to
FreeBSD for the issue. You would be doing your own
patching and building as far as I know.

(For the rpi4, I kept my investigatory sysutils/u-boot-rpi4
patch that I used, providing a hackish workaround for now.)

Anything after head -r356767 ( such as -r356776 ) is
going to show garbage-in/garbage-out behavior that need
not be uniform from version to version.

Otherwise, I suggest sticking to -r356767 or earlier, which
happens to work by accident, even though the FreeBSD kernel
was not told the right memory region to avoid.

===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-arm mailing list