qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [Bug 1811888] [NEW] Qemu refuses to multiboot Elf64 kernels


From: Lukasz Janyst
Subject: [Qemu-devel] [Bug 1811888] [NEW] Qemu refuses to multiboot Elf64 kernels
Date: Tue, 15 Jan 2019 19:25:33 -0000

Public bug reported:

Qemu does not multiboot Elf64 bit kernels when emulating x86_64 systems.
This is unfortunate because it renders the `-kernel` option quite
useless. It's true that a multiboot compatible bootloader puts you in
protected mode by default, and you have to set up the long mode
yourself. While it is easy to put such 32-bit bootstrap code in a 64 bit
binary, it is not possible to compile a 64 bit kernel into a 32 bit
binary.

After quick search, it turned out that loading 64 bit elf binaries has
been disabled to be compatible with GRUB. However, since that time, both
GRUB and Syslinux load 64 bit ELF kernels just fine, which makes qemu
incompatible with them. Furthermore, it seems that this feature does and
has always worked fine and that people have since submitted patches to
re-enable it.

https://patchwork.ozlabs.org/patch/62142/
https://patchwork.kernel.org/patch/9770523/

Please consider applying the attached patch.

Best Regards,
Lukasz Janyst

** Affects: qemu
     Importance: Undecided
         Status: New

** Attachment added: 
"0001-hw-i386-multiboot.c-Don-t-refuse-to-boot-ELF64-binar.patch"
   
https://bugs.launchpad.net/bugs/1811888/+attachment/5229414/+files/0001-hw-i386-multiboot.c-Don-t-refuse-to-boot-ELF64-binar.patch

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1811888

Title:
  Qemu refuses to multiboot Elf64 kernels

Status in QEMU:
  New

Bug description:
  Qemu does not multiboot Elf64 bit kernels when emulating x86_64
  systems. This is unfortunate because it renders the `-kernel` option
  quite useless. It's true that a multiboot compatible bootloader puts
  you in protected mode by default, and you have to set up the long mode
  yourself. While it is easy to put such 32-bit bootstrap code in a 64
  bit binary, it is not possible to compile a 64 bit kernel into a 32
  bit binary.

  After quick search, it turned out that loading 64 bit elf binaries has
  been disabled to be compatible with GRUB. However, since that time,
  both GRUB and Syslinux load 64 bit ELF kernels just fine, which makes
  qemu incompatible with them. Furthermore, it seems that this feature
  does and has always worked fine and that people have since submitted
  patches to re-enable it.

  https://patchwork.ozlabs.org/patch/62142/
  https://patchwork.kernel.org/patch/9770523/

  Please consider applying the attached patch.

  Best Regards,
  Lukasz Janyst

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1811888/+subscriptions



reply via email to

[Prev in Thread] Current Thread [Next in Thread]