Re: [PATCH] x86/efi: skip bgrt init for kexec reboot

From: Dave Young
Date: Wed Feb 03 2016 - 16:42:26 EST



On 01/27/16 at 07:20pm, Dave Young wrote:
> For kexec reboot the bgrt image address could contains random data because
> we have freed boot service areas in 1st kernel boot phase. One possible
> result is kmalloc fail in efi_bgrt_init due to large random image size.
>
> So change efi_late_init to avoid efi_bgrt_init in case kexec boot.
>
> Signed-off-by: Dave Young <dyoung@xxxxxxxxxx>
> ---
> arch/x86/platform/efi/efi.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> --- linux-x86.orig/arch/x86/platform/efi/efi.c
> +++ linux-x86/arch/x86/platform/efi/efi.c
> @@ -531,7 +531,8 @@ void __init efi_init(void)
>
> void __init efi_late_init(void)
> {
> - efi_bgrt_init();
> + if (!efi_setup)
> + efi_bgrt_init();
> }
>
> void __init efi_set_executable(efi_memory_desc_t *md, bool executable)

Matt, opinions about this patch?

Thanks
Dave