[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v6 00/14] Load BIOS via toolstack instead of been embedded in hvmloader.
Hi all, V6: few changes detailed in patches. Missing acks on the following patches: 1 libxc: Rework extra module initialisation 2 libxc: Prepare a start info structure for hvmloader 5 libxl: Load guest BIOS from file 6 xen: Move the hvm_start_info C representation from libxc to public/xen.h 8 hvmloader: Locate the BIOS blob 9 hvmloader: Check modules whereabouts in perform_tests Thanks. Changes in V5: quite a few rework it as been suggest that "bios" was not quite right to name SeaBIOS/OVMF, so when I introduce a new name/variable instead of bios, I tried to use system_firmware which is more appropriate, I think, with regards to OVMF. Details of the changes in the patches. Other changes detailed patches description. I've look at loading the BIOS via the toolstack instead of having them embedded in the hvmloader binary. After this patch series, hvmloader compilation would be indenpendant from SeaBIOS and OVMF compilation. Here is a general view of the few step to load the BIOS: - libxl load the BIOS blob into it's memory and add it to struct xc_hvm_build_args.system_firmware_module - libxc load the blob into the guest memory and fill the struct hvm_start_info and store a name for each module into the module cmdline. - hvmloader read the addresses from the hvm_start_info, find out which module to load and copy the blob to the right place. A git tree can be found here: git://xenbits.xen.org/people/aperard/xen-unstable.git tag: hvmloader-with-separated-bios-v6 Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Cc: Wei Liu <wei.liu2@xxxxxxxxxx> Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> Cc: Jan Beulich <jbeulich@xxxxxxxx> Regards, Anthony PERARD (14): libxc: Rework extra module initialisation libxc: Prepare a start info structure for hvmloader configure: #define SEABIOS_PATH and OVMF_PATH firmware/makefile: install BIOS blob ... libxl: Load guest BIOS from file xen: Move the hvm_start_info C representation from libxc to public/xen.h hvmloader: Grab the hvm_start_info pointer hvmloader: Locate the BIOS blob hvmloader: Check modules whereabouts in perform_tests hvmloader: Load SeaBIOS from hvm_start_info modules hvmloader: Load OVMF from modules hvmloader: bios->bios_load() now needs to be defined hvmloader: Always build-in SeaBIOS and OVMF loader configure: do not depend on SEABIOS_PATH or OVMF_PATH ... docs/man/xl.cfg.pod.5.in | 9 ++ tools/configure.ac | 12 ++- tools/firmware/Makefile | 10 +- tools/firmware/hvmloader/Makefile | 39 +------ tools/firmware/hvmloader/config.h | 2 +- tools/firmware/hvmloader/hvmloader.c | 82 ++++++++++++-- tools/firmware/hvmloader/ovmf.c | 34 +++--- tools/firmware/hvmloader/rombios.c | 3 +- tools/firmware/hvmloader/seabios.c | 25 +++-- tools/firmware/hvmloader/tests.c | 76 ++++++++++++- tools/firmware/hvmloader/util.h | 3 + tools/libxc/include/xc_dom.h | 34 +----- tools/libxc/xc_dom_hvmloader.c | 136 ++++++++---------------- tools/libxc/xc_dom_x86.c | 153 +++++++++++++++++++-------- tools/libxl/libxl.h | 8 ++ tools/libxl/libxl_dom.c | 61 +++++++++++ tools/libxl/libxl_internal.h | 2 + tools/libxl/libxl_paths.c | 10 ++ tools/libxl/libxl_types.idl | 1 + tools/libxl/xl_cmdimpl.c | 11 +- xen/include/public/arch-x86/hvm/start_info.h | 53 ++++++++++ xen/include/public/xen.h | 2 +- 22 files changed, 511 insertions(+), 255 deletions(-) create mode 100644 xen/include/public/arch-x86/hvm/start_info.h -- Anthony PERARD _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |