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

Re: [Xen-devel] [PATCH v16 7/9] x86: make Xen early boot code relocatable



On Fri, Apr 07, 2017 at 05:23:33AM -0600, Jan Beulich wrote:
> >>> On 21.02.17 at 20:19, <daniel.kiper@xxxxxxxxxx> wrote:
> > Every multiboot protocol (regardless of version) compatible image must
> > specify its load address (in ELF or multiboot header). Multiboot protocol
> > compatible loader have to load image at specified address. However, there
> > is no guarantee that the requested memory region (in case of Xen it starts
> > at 2 MiB and ends at ~5 MiB) where image should be loaded initially is a RAM
> > and it is free (legacy BIOS platforms are merciful for Xen but I found at
> > least one EFI platform on which Xen load address conflicts with EFI boot
> > services; it is Dell PowerEdge R820 with latest firmware). To cope with that
> > problem we must make Xen early boot code relocatable and help boot loader to
> > relocate image in proper way by suggesting, not requesting specific load
> > addresses as it is right now, allowed address ranges. This patch does
> > former.
> > It does not add multiboot2 protocol interface which is done in "x86: add
> > multiboot2 protocol support for relocatable images" patch.
> >
> > This patch changes following things:
> >   - %esi register is used as a storage for Xen image load base address;
> >     it is mostly unused in early boot code and preserved during C functions
> >     calls in 32-bit mode,
> >   - %fs is used as base for Xen data relative addressing in 32-bit code
> >     if it is possible; %esi is used for that thing during error printing
> >     because it is not always possible to properly and efficiently
> >     initialize %fs.
> >
> > Signed-off-by: Daniel Kiper <daniel.kiper@xxxxxxxxxx>
>
> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>

It looks that everything passed through test gate and landed in master.
So, this way we have full multiboot2 support in Xen. This means that
you can boot Xen using GRUB2 on EFI platforms.

I would like to thank everybody who helped me to make it happen.
Especially Jan who patiently reviewed whole series many times
and replied for my stupid questions.

Daniel

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

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