Re: FYI: FreeBSD-14.0-CURRENT-arm-armv7-GENERICSD-20220930-42dc8696df5-258315.img is broken for RPi2 v1.1 (so: armv7)

From: Mark Millard <marklmi_at_yahoo.com>
Date: Tue, 11 Oct 2022 18:50:29 UTC
On 2022-Oct-11, at 09:20, Mark Millard <marklmi@yahoo.com> wrote:

> [Summary: Both somewhat before and just after your ConOut commit
> work. I'll have to do a rough bisect with the available armv7
> artifacts that are after those but before October.]
> 
> On 2022-Oct-11, at 08:26, Mark Millard <marklmi@yahoo.com> wrote:
> 
>> On 2022-Oct-11, at 06:17, Warner Losh <imp@bsdimp.com> wrote:
>> . . .
>>> . . .
>>> 
>>> The change was made in late August that I'm thinking of, so if you could find a
>>> snapshot from early August July that would be a useful data point:
>>> 
>>> commit df065f699f1ff819bb9607c44a6754275ab335ed
>>> Author: Warner Losh <imp@FreeBSD.org>
>>> Date:   Fri Aug 26 15:46:33 2022 -0600
>>> 
>>>   stand: More sensible defaults when ConOut is missing
>> 
>> I'll look at finding and trying some artifact build to extract a
>> armv7 EFI loader from. Available snapshot history does not
>> go back that far so far as I know.
>> 
>> But I may not be able to look into this immediately.
>> 
>> In main:
>> 
>> commit df065f699f1ff819bb9607c44a6754275ab335ed
>> Author:     Warner Losh <imp@FreeBSD.org>
>> AuthorDate: 2022-08-26 21:46:33 +0000
>> Commit:     Warner Losh <imp@FreeBSD.org>
>> CommitDate: 2022-08-27 04:17:56 +0000
>> 
>> It looks like the closest prior artifact is at:
>> 
>> https://artifact.ci.freebsd.org/snapshot/main/a358db5603702d5de5fd75f5bd16bbf7c0ab673f/arm/armv7/?C=M&O=D
>> git: a358db560370 - main - socket(2): bring documentation up tp date Gleb Smirnoff
>> 
>> with date/time: 2022-Aug-26 16:26
>> 
>> So I expect to use that.
> 
> Turns out that I had the time.
> 
> Use of the ./boot/loader.efi from a358db560370 substituted
> into the failing main snapshot based microsd card worked
> fine for both contexts:
> 
> A) Just serial console.
> and:
> B) Serial console and HDMI console at the same time.
> 
> I also tried the oldest artifact build with the loader change
> in place:
> 
> https://artifact.ci.freebsd.org/snapshot/main/7ed3228323ef4f9e3130603ea68c3be9c2ed50ce/arm/armv7/
> git: 7ed3228323ef - main - stand: Document that boot0 uses BIOS Warner Losh
> Date/time: 2022-Aug-27 05:12
> 
> This also worked for both (A) and (B).
> 
> So it looks like I'll be doing a rough bisect to find a
> before/after pair. It might have some elapsed time to
> finish.

The date/times encoded into the file names below
are those shown for base.txz . The overall artifact
directory date/time is somewhat later. The -good
vs. -bad suffix indicates the boot status.

# ls -C1d *
boot-2022-08-26-16-26-a358db560370-good
boot-2022-08-27-05-12-7ed3228323ef-good
boot-2022-09-12-18-30-c198adf39498-good
boot-2022-09-15-01-28-145a50dcda7a-good
boot-2022-09-16-14-26-b4174079576a-good
boot-2022-09-16-15-45-b44869cba1b3-good
boot-2022-09-16-18-02-dd2b9c296776-bad
boot-2022-09-16-20-51-30cfb3c8ee3d-bad
boot-2022-09-18-00-46-c3707bd3d658-bad

For:

boot-2022-09-16-15-45-b44869cba1b3-good
boot-2022-09-16-18-02-dd2b9c296776-bad

there are no armv7 artifacts available between.

The range is:

	• git: b44869cba1b3 - main - sound: add patch for Lenovo Legion 5 Intel Nuno Teixeira 
	• git: a705c72f2142 - main - stand: use archsw.arch_copyin instead of i386_copyin Warner Losh 
	• git: 4c670b53a000 - main - stand: use archsw.arch_copyin instead of direct call Warner Losh 
	• git: 8b19d28d68a3 - main - stand: Create MOD_ALIGN macro and use it everywhere Warner Losh 
	• git: bca9c87b6104 - main - stand: Create common/modinfo.h Warner Losh 
	• git: 5d1531d9d4e7 - main - stand: Move md_copymodules into modinfo.c and reduce copies Warner Losh 
	• git: 2e6ed47a4609 - main - stand: Move MOD_xxx macros from modinfo.h to .c Warner Losh 
	• git: fc352701ff3a - main - stand: collapse all copies of *copyenv into md_copyenv Warner Losh 
	• git: e895ab3fbdc1 - main - stand: Remove dead store to bi_kernelname Warner Losh 
	• git: d43bcf62a218 - main - stand: Stop support booting 4.x and earlier kernels Warner Losh 
	• git: 59b1d074280d - main - i386: Mark the obsolete fields in bootinfo with _was_ Warner Losh 
	• git: 4134f677eb39 - main - i386: Make boot loader smaller by reducing size of bootinfo Warner Losh 
	• git: 9758dd3de1cd - main - stand: Allocate bootinfo rather than have it be static Warner Losh 
	• git: c0ecae78abbe - main - stand/elf: Only support swapping headers on powerpc. Warner Losh 
	• git: dd2b9c296776 - main - stand: fix mismerge Warner Losh 



Side note about /boot/msdos :

The Oct-07 snapshot of main [so: 14] has:

# ls -Tld /boot/msdos /boot/efi
drwxr-xr-x  1 root  wheel  16384 Jan  1 00:00:00 1980 /boot/efi
lrwxr-xr-x  1 root  wheel     51 Oct  7 10:36:20 2022 /boot/msdos -> /usr/obj/usr/src/arm.armv7/release/GENERIC/boot/efi

===
Mark Millard
marklmi at yahoo.com