On Thu, Jan 09, 2025 at 03:48:56PM +0100, Ard Biesheuvel wrote: > On Tue, 7 Jan 2025 at 13:05, Breno Leitao <leitao@xxxxxxxxxx> wrote: > > On Tue, Jan 07, 2025 at 12:24:03PM +0100, Ard Biesheuvel wrote: > > We are seeing a bunch of `Corrupted EFI Memory Attributes Table > > detected!` in the Meta fleet, and this is something we are > > investigating. > > > > We highly think this is related to some kexec overwrites, and when we > > get here, the EFI table is completely garbage. I haven't seen this > > problem on cold boot. > > > > It likely means the memory is not reserved correctly. > > Could you check whether this > > --- a/drivers/firmware/efi/memattr.c > +++ b/drivers/firmware/efi/memattr.c > @@ -56,7 +56,7 @@ int __init efi_memattr_init(void) > } > > tbl_size = sizeof(*tbl) + size; > - memblock_reserve(efi_mem_attr_table, tbl_size); > + efi_mem_reserve(efi_mem_attr_table, tbl_size); > set_bit(EFI_MEM_ATTR, &efi.flags); > > unmap: > > > makes any difference? It doesn't seem so. This is how I tested it. I've cherry-picked it on top of Linus' master eea6e4b4dfb8 ("Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi"), and booted a system with this kernel.