Hi, I think I got a regression from commit 53d5a221632e ("emulation: Use bloblist to hold tables"), and v2024.10 for qemu-riscv64_smode_defconfig + acpi.config booting Linux with UEFI.
TL;DR: It seems like the RSDP is placed in the wrong EFI memory map type (it should be "ACPI Reclaim"). I might also be misunderstanding what config fragments should be used -- I'm out in the weeds here! ;-) When I was using v2024.10, ACPI RSDP was in ACPI Reclaim memory. All good, and e.g. a kexec would properly work. However, when using u-boot with commit 53d5a221632e ("emulation: Use bloblist to hold tables") I get the following when booting, and then kexec: First kernel: [ 0.000000] ACPI: Early table checksum verification disabled [ 0.000000] ACPI: RSDP 0x000000047EED3000 000024 (v02 BOCHS ) Kexec kernel: [ 0.000000] ACPI: Early table checksum verification disabled [ 0.000000] ACPI: 0x000000047EED3000 000000 (v00 00000000 00000000) [ 0.000000] Oops - load access fault [#1] RSDP reside in: [ 0.000000] efi: 0x00047ded1000-0x00047eee3fff [Boot Code | | | | | | | | | | | |WB| | | ] (Boot Code vs ACPI Reclaimed) Now to get qemu-riscv64_smode_defconfig + acpi.config to build post-2024.10, I needed to add the following fragments: CONFIG_BLOBLIST=y CONFIG_BLOBLIST_ALLOC=y CONFIG_BLOBLIST_SIZE_RELOC=0x20000 which is really just a "make the build not complain", guessing game from my side. My guess would be that it's related to the change in evt_write_acpi_tables(), where: - ptr = memalign(SZ_4K, SZ_64K); + ptr = bloblist_add(BLOBLISTT_ACPI_TABLES, SZ_64K, 12); is done. Is my config fragment broken, or is this a proper regression? Thanks! Björn