Date: Mon, 11 Jan 2021 16:19:56 -0800 From: Mark Millard <marklmi@yahoo.com> To: Gordon Bergling <gbe@freebsd.org> Cc: freebsd-arm@freebsd.org Subject: Re: PR 252541: Early kernel panic on RPi4B (Too many early devmatch mappings) Message-ID: <F0031010-EBB0-4DDE-B9D1-20A0F161E4EA@yahoo.com> In-Reply-To: <7C6DC946-B7B6-42C8-A8B9-0471ED7B77AA@yahoo.com> References: <X/y5YbRUMOyn4Hwl@lion.0xfce3.net> <7C6DC946-B7B6-42C8-A8B9-0471ED7B77AA@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2021-Jan-11, at 14:23, Mark Millard <marklmi at yahoo.com> wrote: > On 2021-Jan-11, at 12:47, Gordon Bergling <gbe at freebsd.org> wrote: >=20 > Hi, >=20 > I am currently investigating PR 252541 (Too many early devmatch = mappings) [1]. >=20 > The kernel panic happends on the RPi4B. Has anyone successfully booted = a rivision > on the RPi4B after: >=20 > = --------------------------------------------------------------------------= ------- > commit e83fdf8bb391579fa422d34663cd8c1f82a00dc0 > Author: Chuck Tuffli <chuck@FreeBSD.org> > AuthorDate: 2021-01-08 22:36:37 +0000 > Commit: Chuck Tuffli <chuck@FreeBSD.org> > CommitDate: 2021-01-08 22:41:45 +0000 >=20 > fix big-endian platforms after 6733401935f8 >=20 > The NVMe byte-swap routines for big-endian platforms used memcpy() to > move the unaligned 64-bit value into a temp register to byte swap it. > Instead of introducing a dependency, manually byte-swap the values in > place. > = --------------------------------------------------------------------------= ------- >=20 > --Gordon >=20 > [1] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D252541 >=20 > I do my own builds but I'm running based on 19cca0b9613d > with CommitDate 2021-01-09 16:21:33 -0800 : >=20 > # ~/fbsd-based-on-what-freebsd-main.sh mm-src > 19cca0b9613d7c3058e41baf0204245119732235 > CommitDate: 2021-01-09 16:21:33 -0800 > 5d333ee67ac3 19cca0b9613d (HEAD -> mm-src) mm-src snapshot for mm's = patched build in git context. > FreeBSD RPi4B 13.0-CURRENT FreeBSD 13.0-CURRENT = mm-src-c255807-g5d333ee67ac3 GENERIC-NODBG arm64 aarch64 1300134 = 1300134 >=20 > In other words, the history spanned for e83fdf8bb391 and > after is: >=20 > * aio: fix the tests when ZFS is not available Alan Somers = 46 hours 2 -0/+5 > * linuxkpi: Fix the "error: unknown type name 'u32'" compilation = issue when Neel Chauhan 47 hours 1 -0/+1 > * netmap: vtnet: stop krings during interface reset Vincenzo = Maffione 48 hours 1 -1/+7 > * netmap: refactor netmap_reset Vincenzo Maffione 2 days = 1 -45/+20 > * netmap: iflib: fix asserts in netmap_fl_refill() Vincenzo = Maffione 2 days 1 -1/+2 > * netmap: iflib: stop krings during interface reset Vincenzo = Maffione 2 days 2 -1/+10 > * fileargs: add tests Mariusz Zaborski 2 days 3 = -0/+625 > * tcp: don't use KTLS socket option on listening sockets Michael = Tuexen 4 days 1 -0/+10 > * arm: revert MAXDSIZ change from 202aea9c82ea Kyle Evans = 2 days 1 -1/+1 > * kevent(2): Bugfix for wrong EVFILT_TIMER timeouts Jan = Kokem=C3=BCller 2 days 1 -1/+1 > * ldd: renumber executable type constants Ed Maste 2 days = 1 -2/+2 > * diff: honour flags with -q Ed Maste 2 days 2 = -1/+13 > * sysctl: improve debug.kdb.panic_str description Warner Losh = 2 days 1 -1/+1 > * last(1): Add EXAMPLES section Fernando Apestegu=C3=ADa = 2 days 1 -4/+22 > * man(1): Bump .Dd Fernando Apestegu=C3=ADa 2 days = 1 -1/+1 > * man(1): Add EXAMPLES section Fernando Apestegu=C3=ADa = 2 days 1 -0/+35 > * mvneta: Acquire the softc lock before clearing the MIB Mark = Johnston 2 days 1 -0/+2 > * Add fib lookup testing module. Alexander V. Chernikov 2 days = 2 -0/+548 > * Bring DPDK route lookups to FreeBSD. Alexander V. Chernikov = 2 days 17 -0/+6030 > * Fix LINT kernel build after = 01f2e864f79584c0cd250a8e7cfb501a9985768a. Hans Petter Selasky = 3 days 1 -1/+4 > * certctl: factor out certname resolution Kyle Evans 3 days = 1 -2/+17 > * certctl: replace hardcoded uses of /usr/local Kyle Evans = 3 days 1 -2/+3 > * fix big-endian platforms after 6733401935f8 Chuck Tuffli = 3 days 1 -5/+9 >=20 > The RPi4B is a 8 GiByte one, booted directly from a USB3 SSD, > no microsd card involved. I can boot either u-boot style or > UEFI/ACPI style from the same media, just switching config.txt > content. >=20 > I do not have MMCCAM or the like: >=20 > # more /usr/fbsd/mm-src/sys/arm64/conf/GENERIC-NODBG=20 > # > # GENERIC -- Custom configuration for the arm64/aarch64 > # >=20 > include "GENERIC" >=20 > ident GENERIC-NODBG >=20 > makeoptions DEBUG=3D-g # Build kernel with gdb(1) = debug symbols >=20 > options ALT_BREAK_TO_DEBUGGER >=20 > options KDB # Enable kernel debugger = support >=20 > # For minimum debugger support (stable branch) use: > #options KDB_TRACE # Print a stack trace for a = panic > options DDB # Enable the kernel debugger >=20 > # Extra stuff: > #options VERBOSE_SYSINIT=3D0 # Enable verbose sysinit = messages > #options BOOTVERBOSE=3D1 > #options BOOTHOWTO=3DRB_VERBOSE > #options KTR > #options KTR_MASK=3DKTR_TRAP > ##options KTR_CPUMASK=3D0xF > #options KTR_VERBOSE >=20 > # Disable any extra checking for. . . > nooptions DEADLKRES # Enable the deadlock resolver > nooptions INVARIANTS # Enable calls of extra sanity = checking > nooptions INVARIANT_SUPPORT # Extra sanity checks of = internal structures, required by INVARIANTS > nooptions WITNESS # Enable checks to detect = deadlocks and cycles > nooptions WITNESS_SKIPSPIN # Don't run witness on = spinlocks for speed > nooptions DIAGNOSTIC > nooptions MALLOC_DEBUG_MAXZONES # Separate malloc(9) zones > nooptions BUF_TRACKING > nooptions FULL_BUF_TRACKING >=20 Looks like the message is from a KASSERT that does nothing unless INVARIANTS/INVARIANT_SUPPORT is enabled. Unfortunately, arftifacts.ci.freebsd.org has not started getting git-based main builds yet. Normally I'd support an official debug kernel from there and see if I could repeat the problem. So I've made my own debug kernel build for things as they are in my context and it reproduced the problem: Hit [Enter] to boot immediately, or any other key for command prompt. Booting [/boot/kernel/kernel]... =20 Using DTB provided by EFI at 0x7ef0000. EFI framebuffer information: addr, size 0x3e2fe000, 0x7e9000 dimensions 1920 x 1080 stride 1920 masks 0x00ff0000, 0x0000ff00, 0x000000ff, 0xff000000 ---<<BOOT>>--- panic: Too many early devmap mappings cpuid =3D 0 time =3D 1 KDB: stack backtrace: (null)() at 0xffff000000116980 pc =3D 0xffff000000772af4 lr =3D 0xffff000000116980 sp =3D 0xffff0000011f1320 fp =3D 0xffff0000011f1520 (null)() at 0xffff000000464710 pc =3D 0xffff000000116980 lr =3D 0xffff000000464710 sp =3D 0xffff0000011f1530 fp =3D 0xffff0000011f1590 (null)() at 0xffff0000004644b4 pc =3D 0xffff000000464710 lr =3D 0xffff0000004644b4 sp =3D 0xffff0000011f15a0 fp =3D 0xffff0000011f1650 (null)() at 0xffff0000007e9838 pc =3D 0xffff0000004644b4 lr =3D 0xffff0000007e9838 sp =3D 0xffff0000011f1660 fp =3D 0xffff0000011f1660 (null)() at 0xffff00000076f744 pc =3D 0xffff0000007e9838 lr =3D 0xffff00000076f744 sp =3D 0xffff0000011f1670 fp =3D 0xffff0000011f1690 (null)() at 0xffff000000782904 pc =3D 0xffff00000076f744 lr =3D 0xffff000000782904 sp =3D 0xffff0000011f16a0 fp =3D 0xffff0000011f16c0 (null)() at 0xffff0000002896b0 pc =3D 0xffff000000782904 lr =3D 0xffff0000002896b0 sp =3D 0xffff0000011f16d0 fp =3D 0xffff0000011f1790 (null)() at 0xffff0000007d9bb0 pc =3D 0xffff0000002896b0 lr =3D 0xffff0000007d9bb0 sp =3D 0xffff0000011f17a0 fp =3D 0xffff0000011f1820 (null)() at 0xffff00000028b814 pc =3D 0xffff0000007d9bb0 lr =3D 0xffff00000028b814 sp =3D 0xffff0000011f1830 fp =3D 0xffff0000011f1840 (null)() at 0xffff00000039e448 pc =3D 0xffff00000028b814 lr =3D 0xffff00000039e448 sp =3D 0xffff0000011f1850 fp =3D 0xffff0000011f1870 (null)() at 0xffff0000004af2ac pc =3D 0xffff00000039e448 lr =3D 0xffff0000004af2ac sp =3D 0xffff0000011f1880 fp =3D 0xffff0000011f18b0 (null)() at 0xffff00000077ef90 pc =3D 0xffff0000004af2ac lr =3D 0xffff00000077ef90 sp =3D 0xffff0000011f18c0 fp =3D 0xffff0000011f1a00 (null)() at 0xffff00000000089c pc =3D 0xffff00000077ef90 lr =3D 0xffff00000000089c sp =3D 0xffff0000011f1a10 fp =3D 0x0000000000000000 KDB: enter: panic [ thread pid 0 tid 0 ] Stopped at 0xffff0000004aeeb4 db> dump Cannot dump: no dump device specified. db>=20 =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?F0031010-EBB0-4DDE-B9D1-20A0F161E4EA>