[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 Thu, Apr 13, 2017 at 04:11:25PM +0200, Daniel Kiper wrote:
> 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.
> 

<Konrad unscrews the vodka bottle!>

Yeeeeey! Congrats!

> 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®.