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

Re: [Xen-devel] [PATCH v2 3/5] xen/x86: Migrate to boot_info structure



On Thu, Sep 25, 2014 at 10:43:36AM +0100, Ian Campbell wrote:
> On Wed, 2014-09-24 at 19:19 +0200, Daniel Kiper wrote:
> > Break multiboot (v1) protocol dependency. It means that most of Xen code
> > (excluding preloader) could be bootloader agnostic and does not need almost
> > any knowledge about boot protocol. Additionally, we are able to pass all 
> > boot
> > data to __start_xen() in one bucket without any side channels. I do not 
> > mention
> > that we are also able to easily identify boot data in Xen code.
> >
> > Here is boot data flow for legacy BIOS platform:
> >
> >  BIOS -> GRUB -> multiboot[12]* -> __reloc() -> MBD ->-\
> >                                                        /
> >         ------<------<------<------<------<------<-----
> >          \
> >           \
> >            ---> __init_boot_info() -> boot_info_mb -> __start_xen() -> 
> > boot_info
> >           /
> >  BIOS ->-/
> >
> >   * multiboot2 is not implemented yet. Look for it in later patches.
> >
> > Here is boot data flow for EFI platform:
> >
> >   EFI -> efi_start() -> boot_info_efi -> __start_xen() -> boot_info
> >
> > WARNING: ARM build could be broken by this patch.
>
> The hypervisor is easy to cross compile, so please confirm and if so fix
> it.
>
> I use the cross compilers from
> https://launchpad.net/linaro-toolchain-binaries
>
> See
> http://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions#Cross_Compiling
>  for more info.

Thanks, wilco.

> > We need to agree boot_info
> > integration into ARM. Personally I think that it is worth storing all data
> > from any bootloader and preloader in boot_info on any architecture. This 
> > give
> > a chance to share more code between architectures. However, every 
> > architecture
> > should define its own boot_info (in relevant include/asm directory). Despite
> > that it looks that some parts of it could be common, e.g.  modules data,
> > command line arguments, boot loader name, EFI data, etc., even if types
> > would not be the same. So, as it was stated above a lot of code could be
> > shared among architectures.
>
> As I think I've said before I'm happy to consider this in the future but

Great!

> not for 4.5 at this stage. Please ensure that ARM at least still

Roger.

> compiles after this change.

Ditto.

Daniel

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


 


Rackspace

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