grub-devel
[Top][All Lists]
Advanced

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

Re: pvgrub2 is merged


From: Colin Watson
Subject: Re: pvgrub2 is merged
Date: Fri, 29 Nov 2013 18:16:52 +0000
User-agent: Mutt/1.5.21 (2010-09-15)

On Fri, Nov 29, 2013 at 09:44:27PM +0400, Andrey Borzenkov wrote:
> В Fri, 29 Nov 2013 13:24:22 +0000
> Colin Watson <address@hidden> пишет:
> > On Sat, Nov 09, 2013 at 09:52:20PM +0100, Vladimir 'φ-coder/phcoder' 
> > Serbinenko wrote:
> > > Hello, all. pvgrub2 has just became part of upstream grub as ports
> > > i386-xen and x86_64-xen.
> > 
> > Could anyone offer packaging advice for which ports should be built
> > here?  Is it reasonable to assume that a 32-bit userspace only needs the
> > 32-bit Xen port and a 64-bit userspace only needs the 64-bit Xen port,
> > or is it possible that there could be cross-architecture combinations
> > here?  Does the architecture of the GRUB port have to match the
> > architecture of the Xen hypervisor?
> 
> I guess this question is better asked on xen-devel.

I'm not subscribed there, and was hoping not to have to start by
explaining PV-GRUB2, especially since I don't fully understand it myself
yet. :-)

> Assuming we have 64 bit dom0 and try to boot 32 bit domU. Is it
> possible to start with loading 64 bit grub that loads 32 bit kernel
> and jumps to it? If yes (and in other direction too) situation becomes
> relatively simple.

This is why I want to know exactly what's compatible with what, indeed.
I can answer part of the question by code inspection: I see in
grub-core/loader/i386/xen.c that the GRUB Xen port can only load Linux
kernels that exactly match its own architecture.  That means that we
have four entities, any of which are potentially 32-bit or 64-bit, and
we need to know the full compatibility matrix:

  dom0
    ... can run? ...
  domU
    ... can load? ...
  GRUB
    ... can load? ...
  guest kernel

I gather that OpenSUSE only supports 64-bit hypervisors?  If so then you
probably don't care about the first part, but I'd still like to
understand it.

I would assume that you can't run a 64-bit GRUB on a 32-bit domU because
the guest won't have a suitable memory layout, but I don't know for
sure.  I also assume that if you have a 32-bit hypervisor you can't run
anything 64-bit on top of it, but ditto.

It would be nice to know why the restriction that GRUB must match the
guest kernel exists, and whether this is intrinsic or fixable.

-- 
Colin Watson                                       address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]