On Wed, Nov 21, 2012 at 11:52 AM, H. Peter Anvin <hpa at zytor.com> wrote: > On 11/21/2012 11:50 AM, Yinghai Lu wrote: >>> >>> So how do I force a 16bit or 32bit entry using a bzImage64? >> >> kexec -t bzImage -l .... >> will load low and use 32bit entry. >> >> kexec -t bzImage64 -l ... >> kexec -l ... >> will try to load high and use 64bit entry. >> > > I don't see any difference... > --- a/kexec/arch/x86_64/kexec-x86_64.c +++ b/kexec/arch/x86_64/kexec-x86_64.c @@ -37,6 +37,7 @@ struct file_type file_type[] = { { "multiboot-x86", multiboot_x86_probe, multiboot_x86_load, multiboot_x86_usage }, { "elf-x86", elf_x86_probe, elf_x86_load, elf_x86_usage }, + { "bzImage64", bzImage64_probe, bzImage64_load, bzImage64_usage }, { "bzImage", bzImage_probe, bzImage_load, bzImage_usage }, { "beoboot-x86", beoboot_probe, beoboot_load, beoboot_usage }, { "nbi-x86", nbi_probe, nbi_load, nbi_usage }, bzImage64_probe will be run before bzImage_probe. and if it find that is 64bit, bzImage_probe will not be executed.