Re: [PATCH] x86/efi: update e820 about reserved EFI boot services data to fix kexec breakage

From: Ingo Molnar
Date: Wed Dec 04 2019 - 05:09:29 EST



* Dave Young <dyoung@xxxxxxxxxx> wrote:

> On 12/04/19 at 03:52pm, Dave Young wrote:
> > Michael Weiser reported he got below error during a kexec rebooting:
> > esrt: Unsupported ESRT version 2904149718861218184.
> >
> > The ESRT memory stays in EFI boot services data, and it was reserved
> > in kernel via efi_mem_reserve(). The initial purpose of the reservation
> > is to reuse the EFI boot services data across kexec reboot. For example
> > the BGRT image data and some ESRT memory like Michael reported.
> >
> > But although the memory is reserved it is not updated in X86 e820 table.
> > And kexec_file_load iterate system ram in io resource list to find places
> > for kernel, initramfs and other stuff. In Michael's case the kexec loaded
> > initramfs overwritten the ESRT memory and then the failure happened.
>
> s/overwritten/overwrote :) If need a repost please let me know..

No need, I've edited the typo. :)

Thanks,

Ingo