On Fri, Apr 04, 2025 at 03:10:29PM +0200, Niklas Sombert wrote: > Hi all, > > I've written a small EFI bootloader and I'm testing it on QEMU with OVMF and > with u-boot (with the qemu-x86_defconfig as -bios in QEMU). > > On upgrading from 2025.01 to 2025.04-rc5, I've noticed that the SMBIOS > tables that are passed via the SMBIOS EFI config table are completely blank > (just zeroes instead of starting with SM3). > > This is pretty easy to reproduce: > > git checkout v2025.01 > make clean > git clean -xf > make qemu-x86_defconfig > # edit .config: CONFIG_CMD_SMBIOS=y > make -j4 > qemu-system-i386 -bios u-boot.rom > # type "smbios" in the prompt and see information about the system > > versus: > git checkout v2025.04-rc5 > make clean > git clean -xf > make qemu-x86_defconfig > # edit .config: CONFIG_CMD_SMBIOS=y > make -j4 > qemu-system-i386 -bios u-boot.rom > # type "smbios" and get the following error: > # do_smbios() Unknown SMBIOS anchor format > > This is on QEMU version 6.2.0 (Debian 1:6.2+dfsg-2ubuntu6.25), the one > Ubuntu 22.04 currently ships, but I also get the same results on Ubuntu > 24.04. > > Bisecting leads me to the following commit: > > commit d5bc5c6cb0291203fe848a8532a7ecbcd44cfe9e > Author: Simon Glass <[email protected]> > Date: Fri Jan 10 17:00:26 2025 -0700 > > x86: emulation: Enable bloblist > > Add bloblist support so that tables can be generated and placed in a > bloblist, then passed to a payload using UPL > > Signed-off-by: Simon Glass <[email protected]> > > diff --git a/configs/qemu-x86_64_defconfig b/configs/qemu-x86_64_defconfig > index 2771a4b9e19..792ba06c2b8 100644 > --- a/configs/qemu-x86_64_defconfig > +++ b/configs/qemu-x86_64_defconfig > @@ -1,6 +1,7 @@ > CONFIG_X86=y > CONFIG_TEXT_BASE=0x1110000 > CONFIG_SYS_MALLOC_F_LEN=0x1000 > +CONFIG_BLOBLIST_SIZE_RELOC=0x20000 > CONFIG_NR_DRAM_BANKS=8 > CONFIG_ENV_SIZE=0x40000 > CONFIG_MAX_CPUS=2 > @@ -33,6 +34,7 @@ CONFIG_LOGF_FUNC=y > CONFIG_SPL_LOG=y > CONFIG_DISPLAY_BOARDINFO_LATE=y > CONFIG_PCI_INIT_R=y > +CONFIG_BLOBLIST=y > CONFIG_BLOBLIST_FIXED=y > CONFIG_BLOBLIST_ADDR=0x10000 > CONFIG_SPL_NO_BSS_LIMIT=y > diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig > index 947d15cd727..0b0e10c795f 100644 > --- a/configs/qemu-x86_defconfig > +++ b/configs/qemu-x86_defconfig > @@ -1,6 +1,7 @@ > CONFIG_X86=y > CONFIG_TEXT_BASE=0xFFF00000 > CONFIG_SYS_MALLOC_F_LEN=0x1000 > +CONFIG_BLOBLIST_SIZE_RELOC=0x20000 > CONFIG_NR_DRAM_BANKS=8 > CONFIG_ENV_SIZE=0x40000 > CONFIG_MAX_CPUS=2 > @@ -23,6 +24,9 @@ CONFIG_LOG=y > CONFIG_LOGF_FUNC=y > CONFIG_DISPLAY_BOARDINFO_LATE=y > CONFIG_PCI_INIT_R=y > +CONFIG_BLOBLIST=y > +CONFIG_BLOBLIST_FIXED=y > +CONFIG_BLOBLIST_ADDR=0x10000 > CONFIG_CMD_CPU=y > CONFIG_CMD_BOOTEFI_SELFTEST=y > CONFIG_CMD_NVEDIT_EFI=y > > Just setting CONFIG_BLOBLIST=n solves this problem for me. > > I'm not sure how to debug this further, because v2025.01 doesn't build with > the config from v2025.04-rc5: > ld.bfd: arch/x86/lib/tables.o: in function `write_tables': > /home/niklas/Build/u-boot/arch/x86/lib/tables.c:171: undefined reference to > `acpi_write_rsdp'
I think for the v2025.04 release we should just put BLOBLIST=n (so long as CI passes still), and file an issue to sort this out for the next release. Can you please file something at https://source.denx.de/u-boot/custodians/u-boot-dm/-/issues ? Thanks! -- Tom
signature.asc
Description: PGP signature

