FYI: head -r358966 -> -r359736 and RPi4: -r359736 fails to boot (unless I use boot -v) where -r358966 booted fine before update
Mark Millard
marklmi at yahoo.com
Sun Mar 29 01:20:41 UTC 2020
On 2020-Mar-28, at 17:14, Mark Millard <marklmi at yahoo.com> wrote:
> I use a microsd card that is set up for booting both
> a Rock64 and a RPi4: the dd'd u-boot vs. the RPi4
> specific materials are in independent places and
> the rest is shared and rather generic.
>
> So at head -r358966 I'd been able to both the
> Rock64 and the RPi4 from the same media.
>
> Now with head -r359736 in place instead:
>
> A) The Rock64 boots via that media just fine.
>
> B) The RPi4 fails to boot (nothing special
> like "boot -v").
>
> C) The RPi4 with "boot -v" boots just fine.
> (This makes identifying the issue non-obvious.)
>
Booting the old kernel seems to consistently
work (unload, load, boot sequence).
boot -v of the new kernel can fail.
Plain boot of the new kernel can on occasion
boot.
This makes for more comparable output
difference checking . . .
Dealing with pain boot 1st (then I'll
show the boot -v comparison), I show
just differences in the captured output
. . .
EFI boot manager: Cannot load any image
679248 bytes read in 91 ms (7.1 MiB/s)
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
vs.
EFI boot manager: Cannot load any image
679248 bytes read in 90 ms (7.2 MiB/s)
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
Booting [/boot/kernel/kernel]...
vs.
Booting [/boot/kernel/kernel] in 9 seconds...
Type '?' for a list of commands, 'help' for more detailed help.
OK boot
Extra lines on "it boots" case, after the first 2
"REGSITER DUMP"s, starting inside the 3rd
sdhci_bcm1-slot0: Argument: 0x000001aa | Trn mode: 0x00000000
sdhci_bcm1-slot0: Present: 0x000f0000 | Host ctl: 0x00000001
sdhci_bcm1-slot0: Power: 0x0000000f | Blk gap: 0x00000000
sdhci_bcm1-slot0: Wake-up: 0x00000000 | Clock: 0x0000fa07
sdhci_bcm1-slot0: Timeout: 0x00000000 | Int stat: 0x00000000
sdhci_bcm1-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
sdhci_bcm1-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
sdhci_bcm1-slot0: Caps: 0x00000000 | Caps2: 0x00000000
sdhci_bcm1-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
sdhci_bcm1-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
sdhci_bcm1-slot0: ===========================================
sdhci_bcm1-slot0: Got command interrupt 0x00030000, but there is no active command.
sdhci_bcm1-slot0: ============== REGISTER DUMP ==============
sdhci_bcm1-slot0: Sys addr: 0x00000000 | Version: 0x00009902
sdhci_bcm1-slot0: Blk size: 0x00000000 | Blk cnt: 0x00000000
sdhci_bcm1-slot0: Argument: 0x000001aa | Trn mode: 0x00000000
sdhci_bcm1-slot0: Present: 0x000f0000 | Host ctl: 0x00000001
sdhci_bcm1-slot0: Power: 0x0000000f | Blk gap: 0x00000000
sdhci_bcm1-slot0: Wake-up: 0x00000000 | Clock: 0x0000fa07
sdhci_bcm1-slot0: Timeout: 0x00000000 | Int stat: 0x00000000
sdhci_bcm1-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
sdhci_bcm1-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
sdhci_bcm1-slot0: Caps: 0x00000000 | Caps2: 0x00000000
sdhci_bcm1-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
sdhci_bcm1-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
sdhci_bcm1-slot0: ===========================================
sdhci_bcm1-slot0: Got command interrupt 0x00030000, but there is no active command.
sdhci_bcm1-slot0: ============== REGISTER DUMP ==============
sdhci_bcm1-slot0: Sys addr: 0x00000000 | Version: 0x00009902
sdhci_bcm1-slot0: Blk size: 0x00000000 | Blk cnt: 0x00000000
Extra lines on the "it fails to boot" side:
sdhci_bcm0-slot0: Controller timeout
sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
sdhci_bcm0-slot0: Sys addr: 0x000006c8 | Version: 0x00001002
sdhci_bcm0-slot0: Blk size: 0x00000200 | Blk cnt: 0x00000001
sdhci_bcm0-slot0: Argument: 0x0ee2afc1 | Trn mode: 0x00000036
sdhci_bcm0-slot0: Present: 0x1fff0a06 | Host ctl: 0x00000007
sdhci_bcm0-slot0: Power: 0x0000000f | Blk gap: 0x00000080
sdhci_bcm0-slot0: Wake-up: 0x00000000 | Clock: 0x00000107
sdhci_bcm0-slot0: Timeout: 0x00000003 | Int stat: 0x00000000
sdhci_bcm0-slot0: Int enab: 0x01ff003b | Sig enab: 0x01ff003b
sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
sdhci_bcm0-slot0: Caps: 0x45ee6432 | Caps2: 0x0000a525
sdhci_bcm0-slot0: Max curr: 0x00080008 | ADMA err: 0x00000000
sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
sdhci_bcm0-slot0: ===========================================
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
After one "Root mount waiting for: CAM"
that both have, the failing side has:
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 10 more seconds
Mounting from ufs:/dev/label/RPi4root failed with error 2.
Loader variables:
vfs.root.mountfrom=ufs:/dev/label/RPi4root
vfs.root.mountfrom.options=rw,noatime
Manual root filesystem specification:
<fstype>:<device> [options]
Mount <device> using filesystem <fstype>
and with the specified (optional) option list.
eg. ufs:/dev/da0s1a
zfs:zroot/ROOT/default
cd9660:/dev/cd0 ro
(which is equivalent to: mount -t cd9660 -o ro /dev/cd0 /)
? List valid disk boot devices
. Yield 1 second (for background tasks)
<empty line> Abort manual input
mountroot> ?
List of GEOM managed disk devices:
mmcsd0
mountroot>
As for the "it boots" side of the comparison:
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Warning: no time-of-day clock registered, system time will not be set accurately
Setting hostuuid: a4f7fbeb-f668-11de-b280-ebb65474e619.
Setting hostid: 0xcd8e9e25.
Starting file system checks:
/dev/label/RPi4root: FILE SYSTEM CLEAN; SKIPPING CHECKS
/dev/label/RPi4root: clean, 19046293 free (498933 frags, 2318420 blocks, 1.8% fragmentation)
(And so on.)
By contrast, the failing boot -v
comparison goes like (not much is
different between the two boot -v
instances) . . .
The working one had a 3rd REGISTER DUMP
before the mmc0 bus width notice that the
failing one did not have:
sdhci_bcm1-slot0: Got command interrupt 0x00030000, but there is no active command.
sdhci_bcm1-slot0: ============== REGISTER DUMP ==============
sdhci_bcm1-slot0: Sys addr: 0x00000000 | Version: 0x00009902
sdhci_bcm1-slot0: Blk size: 0x00000000 | Blk cnt: 0x00000000
sdhci_bcm1-slot0: Argument: 0x000001aa | Trn mode: 0x00000000
sdhci_bcm1-slot0: Present: 0x000f0000 | Host ctl: 0x00000001
sdhci_bcm1-slot0: Power: 0x0000000f | Blk gap: 0x00000000
sdhci_bcm1-slot0: Wake-up: 0x00000000 | Clock: 0x0000fa07
sdhci_bcm1-slot0: Timeout: 0x00000000 | Int stat: 0x00000000
sdhci_bcm1-slot0: Int enab: 0x01ff00bb | Sig enab: 0x01ff00bb
sdhci_bcm1-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
sdhci_bcm1-slot0: Caps: 0x00000000 | Caps2: 0x00000000
sdhci_bcm1-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000
sdhci_bcm1-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
sdhci_bcm1-slot0: ===========================================
where both then had:
mmc0: setting bus width to 4 bits high speed timing
The failing boot -v ended with:
CPU 1: ARM Cortex-A72 r0p3 affinity: 1
CPU 2: ARM Cortex-A72 r0p3 affinity: 2
CPU 3: ARM Cortex-A72 r0p3 affinity: 3
regulator: shutting down unused regulators
sdhci_bcm0-slot0: Controller timeout
sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
sdhci_bcm0-slot0: Sys addr: 0x000006c8 | Version: 0x00001002
sdhci_bcm0-slot0: Blk size: 0x00000200 | Blk cnt: 0x00000001
sdhci_bcm0-slot0: Argument: 0x0ee2afc1 | Trn mode: 0x00000036
sdhci_bcm0-slot0: Present: 0x1fff0a06 | Host ctl: 0x00000007
sdhci_bcm0-slot0: Power: 0x0000000f | Blk gap: 0x00000080
sdhci_bcm0-slot0: Wake-up: 0x00000000 | Clock: 0x00000107
sdhci_bcm0-slot0: Timeout: 0x00000003 | Int stat: 0x00000000
sdhci_bcm0-slot0: Int enab: 0x01ff003b | Sig enab: 0x01ff003b
sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000
sdhci_bcm0-slot0: Caps: 0x45ee6432 | Caps2: 0x0000a525
sdhci_bcm0-slot0: Max curr: 0x00080008 | ADMA err: 0x00000000
sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000
sdhci_bcm0-slot0: ===========================================
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 1 Timeout
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 10 more seconds
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 9 more seconds
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 8 more seconds
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 7 more seconds
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 6 more seconds
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 5 more seconds
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 4 more seconds
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 3 more seconds
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 2 more seconds
Mounting from ufs:/dev/label/RPi4root failed with error 2; retrying for 1 more second
Mounting from ufs:/dev/label/RPi4root failed with error 2.
Loader variables:
vfs.root.mountfrom=ufs:/dev/label/RPi4root
vfs.root.mountfrom.options=rw,noatime
Manual root filesystem specification:
<fstype>:<device> [options]
Mount <device> using filesystem <fstype>
and with the specified (optional) option list.
eg. ufs:/dev/da0s1a
zfs:zroot/ROOT/default
cd9660:/dev/cd0 ro
(which is equivalent to: mount -t cd9660 -o ro /dev/cd0 /)
? List valid disk boot devices
. Yield 1 second (for background tasks)
<empty line> Abort manual input
mountroot>
The working boot -v instead had for that last area of the
above output:
CPU 1: ARM Cortex-A72 r0p3 affinity: 1
CPU 2: ARM Cortex-A72 r0p3 affinity: 2
CPU 3: ARM Cortex-A72 r0p3 affinity: 3
Root mount waiting for:regulator: shutting down unused regulators
CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Root mount waiting for: CAM
Warning: no time-of-day clock registered, system time will not be set accurately
start_init: trying /sbin/init
Setting hostuuid: a4f7fbeb-f668-11de-b280-ebb65474e619.
Setting hostid: 0xcd8e9e25.
Starting file system checks:
/dev/label/RPi4root: FILE SYSTEM CLEAN; SKIPPING CHECKS
/dev/label/RPi4root: clean, 19057570 free (498234 frags, 2319917 blocks, 1.8% fragmentation)
(I omit the rest.)
That is it for output differences for
boot -v.
I'll note that "shutdown -r now" does not reboot
but just stops after the "Uptime:" message line.
I do not expect that this is new.
===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
More information about the freebsd-arm
mailing list