It is possible to create a 64 bit elf image that has valid multiboot header. qemu should be able to boot such images.
Tested with homemade 64bit OS - now it boots fine with 'qemu -kernel' and as a grub image. Signed-off-by: Anatol Pomozov <anatol.pomo...@gmail.com> --- hw/i386/multiboot.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/hw/i386/multiboot.c b/hw/i386/multiboot.c index 663f35a658..cf1b4f5fb3 100644 --- a/hw/i386/multiboot.c +++ b/hw/i386/multiboot.c @@ -192,11 +192,6 @@ int load_multiboot(FWCfgState *fw_cfg, int kernel_size; fclose(f); - if (((struct elf64_hdr*)header)->e_machine == EM_X86_64) { - fprintf(stderr, "Cannot load x86-64 image, give a 32bit one.\n"); - exit(1); - } - kernel_size = load_elf(kernel_filename, NULL, NULL, &elf_entry, &elf_low, &elf_high, 0, I386_ELF_MACHINE, 0, 0); -- 2.13.1