On Fri, Sep 07, 2012 at 08:37:14AM -0600, Khalid Aziz wrote: > On Fri, 2012-09-07 at 16:56 +0800, Dave Young wrote: > > Actually in x86 setup code if bootloader do not pass correct efi_info in > > boot_params efi_enabled will be set to 0 automaticlly. > > > > When we kexec a kernel, the EFI signature is missing in the bootloader > signature in boot_params, so kexec'd kernels currently disable EFI > automatically even without noefi in this code: > > arch/x86/kernel/setup.c: > > 733 if (!strncmp((char *)&boot_params.efi_info.efi_loader_signature, > 734 "EL32", 4)) { > 735 efi_enabled = 1; > 736 efi_64bit = false; > 737 } else if (!strncmp((char *)&boot_params.efi_info.efi_loader_signatu re, > 738 "EL64", 4)) { > 739 efi_enabled = 1; > 740 efi_64bit = true; > 741 } > > efi_enabled is initialized to 0. Hi Khalid, So what does this mean? Second kernel assumes the regular BIOS and tries to initialize that way? That sounds broken or is it just fine given the fact we are anyway not planning to call into any of the efi services. But what about memory maps, ACPI tables etc. Thanks Vivek