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

[Xen-devel] [PATCH v2 0/5] xen: Break multiboot (v1) dependency and add multiboot2 support


This patch series breaks multiboot (v1) protocol dependency and adds
multiboot2 support. It lays down the foundation for EFI + GRUB2 + Xen
development. Detailed description of ideas and thoughts you will
find in commit message for every patch. If something is not obvious
please drop me a line.

Most of the requested things are fixed but there are still some minor
outstanding issues (multiboot2 tags generation, excessive amount of casts
in xen/arch/x86/boot/reloc.c, etc.; please check commit messages for
more details). If something is not fixed yet it means that I do not have
good idea how to do that. In case you spot something which was mentioned
during previous review and still think that your comment is valid
in particular case please notify me.

Below you can find reply for Konrad's questions in regards to
exception request for Xen 4.5 release.

> Couple of questions:
>  - Since this is mostly XBI code, is there a lot of overlap with the ARM/x86
>    refactoring of the EFI code? As in, will it require a lot of
>    rebasing/fixing it up?

I did not checked that right now. However, Roy once told me that this should
not be very big issue because overlap is not so big. Please check this email
for more details: 

Sadly, it was sent more then one month ago so maybe something has changed.
Roy, any comments on that?

Anyway, I am more than happy to work on this issue with Roy.

>  - What is the disadvantage of having this in Xen 4.6?

Well, it will require to rebase all this work on latest developments.
It could be quite difficult because my patches touches a lot of places
and as I can see there is a chance for substantial changes in some of them.

>  - What is the advantage of having this in Xen 4.5?
>    [My understanding is that it would allow us to thrash out a lot of
>     the early bootup issues _now_ and fix them up instead of
>     having to deal in Xen 4.6 with this, EFI, and SecureBoot - which
>     is a lot of more moving pieces]

More or less. Additionally, we will have support for multiboot2 protocol
in place. There is not very big demand for that but as I know at least Intel
guys were looking for that. IIRC, they needed that for TPM support.


 xen/arch/x86/Makefile             |    1 +
 xen/arch/x86/boot/cmdline.S       |    9 +-
 xen/arch/x86/boot/head.S          |  150 ++++++++++++++++++++++++++++-----
 xen/arch/x86/boot/reloc.c         |  248 
 xen/arch/x86/boot/x86_64.S        |   10 ++-
 xen/arch/x86/boot_info.c          |  258 
 xen/arch/x86/dmi_scan.c           |    7 +-
 xen/arch/x86/domain_build.c       |   24 +++---
 xen/arch/x86/e820.c               |    8 +-
 xen/arch/x86/efi/boot.c           |  214 
 xen/arch/x86/efi/efi.h            |    3 -
 xen/arch/x86/efi/runtime.c        |   52 +++++++++---
 xen/arch/x86/microcode.c          |   39 ++++-----
 xen/arch/x86/mpparse.c            |    9 +-
 xen/arch/x86/platform_hypercall.c |   19 ++---
 xen/arch/x86/setup.c              |  370 
 xen/arch/x86/x86_64/asm-offsets.c |    5 +-
 xen/drivers/acpi/osl.c            |    9 +-
 xen/drivers/video/vesa.c          |    7 +-
 xen/drivers/video/vga.c           |   18 ++--
 xen/include/asm-x86/boot_info.h   |  126 ++++++++++++++++++++++++++++
 xen/include/asm-x86/config.h      |    2 -
 xen/include/asm-x86/e820.h        |   10 +--
 xen/include/asm-x86/edd.h         |    6 --
 xen/include/asm-x86/mbd.h         |   70 ++++++++++++++++
 xen/include/asm-x86/setup.h       |   10 +--
 xen/include/xen/efi.h             |   10 ---
 xen/include/xen/multiboot2.h      |  354 
 xen/include/xen/vga.h             |   18 ----
 xen/include/xsm/xsm.h             |   14 ++--
 xen/xsm/xsm_core.c                |    6 +-
 xen/xsm/xsm_policy.c              |   14 ++--
 32 files changed, 1510 insertions(+), 590 deletions(-)

Daniel Kiper (5):
      xen/x86: Introduce MultiBoot Data (MBD) type
      xen/x86: Define e820 entries counter as unsigned int
      xen/x86: Migrate to boot_info structure
      xen/x86: Use constant as multiboot protocol identifier
      xen/x86: Add multiboot2 protocol support

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.