pvh: Boot uncompressed kernel using direct boot ABI
commitab969087da65e2f67a546cfc664901eda7029e36
authorLiam Merwick <liam.merwick@oracle.com>
Tue, 15 Jan 2019 12:18:06 +0000 (15 12:18 +0000)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 5 Feb 2019 15:50:16 +0000 (5 16:50 +0100)
treeb0c21a3ffeb0cee7a32102f9959671a05249ad42
parent20a965067fbece568d2dcb3ccaa603723731a9f9
pvh: Boot uncompressed kernel using direct boot ABI

These changes (along with corresponding Linux kernel and qboot changes)
enable a guest to be booted using the x86/HVM direct boot ABI.

This commit adds a load_elfboot() routine to pass the size and
location of the kernel entry point to qboot (which will fill in
the start_info struct information needed to to boot the guest).
Having loaded the ELF binary, load_linux() will run qboot
which continues the boot.

The address for the kernel entry point is read from an ELF Note
in the uncompressed kernel binary by a helper routine passed
to load_elf().

Co-developed-by: George Kennedy <George.Kennedy@oracle.com>
Signed-off-by: George Kennedy <George.Kennedy@oracle.com>
Signed-off-by: Liam Merwick <liam.merwick@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
hw/i386/pc.c
include/elf.h