[PATCH v4] x86/boot: Use efi_setup_data for searching RSDP on kexec-ed kernel
j-nomura at ce.jp.nec.com
Mon Apr 15 00:01:54 PDT 2019
On 4/12/19 10:35 PM, Borislav Petkov wrote:
> On Fri, Apr 12, 2019 at 10:49:56AM +0200, Borislav Petkov wrote:
>> Now I need to go figure out whether there's a reliable way to know in
>> the kexec kernel that it *is* a kexec kernel.
> Actually, thinking about this more, we don't need to know whether the
> kernel was kexeced or not. Why?
> Because if it is kexec'ed, kexec(1) passes the required info in
> setup_data. Now, if for whatever reason the kexec'ed kernel fails to
> parse that EFI info and get the systab to figure out the RDSP, then it
> doesn't have any other choice but fail booting.
> Because there's no way it can figure out where the EFI runtime has been
> mapped and recover by finding the RDSP from there.
> So I think we're perfectly fine with the old approach:
> if (!pa)
> pa = kexec_get_rsdp_addr();
> if (!pa)
> pa = efi_get_rsdp_addr();
OK. Then I'll go back to v3 and make sure to hang when
something is wrong during kexec boot on EFI system.
Jun'ichi Nomura, NEC Corporation / NEC Solution Innovators, Ltd.
More information about the kexec