grub-devel
[Top][All Lists]
Advanced

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

Re: [Xen-devel] Loading a 32 bit kernel from 64 bit grub-xen


From: Ian Campbell
Subject: Re: [Xen-devel] Loading a 32 bit kernel from 64 bit grub-xen
Date: Wed, 2 Jul 2014 10:26:40 +0100

On Tue, 2014-07-01 at 14:27 -0400, Phillip Susi wrote:
> On 7/1/2014 12:18 PM, Andrey Borzenkov wrote:
> > В Tue, 01 Jul 2014 12:06:08 -0400 Phillip Susi <address@hidden>
> > пишет:
> > 
> >> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
> > 
> >> I have been trying to fix grub to load a 32 bit kernel from the
> >> 64 bit xen build.  After fixing up one or two minor issues with
> >> the elf loader, I believe I now have it to the point where it
> >> jumps correctly to the 32 bit kernel and it crashes there, since
> >> it is 32 bit code still executing on a cpu in 64 bit mode.  The
> >> question is how to return the cpu to 32 bit mode *under xen*?
> > 
> > 
> > IIRC it was already discussed not long ago and it seems to be Xen 
> > limitation. You probably need to ask on xen-devel to be sure.
> > 
> > Is it not more simple to use 32 bit grub with 32 bit kernel to
> > start with?
> 
> The problem with that is that you have to know in advance which kernel
> you are going to boot.  That makes configuring virtual hosts harder;
> they just want one grub image they can use to chainload whatever the
> guest wants to install in their domain.
> 
> Also there must be a way to do this otherwise a 64 bit kernel running
> under xen wouldn't be able to execute a 32 bit binary.  I suppose I'll
> Cc xen-devel.

Running a 32-bit userspace under a 64-bit kernel is a very different
thing to switching a kernel from 64-bit down to 32-bit (or vice versa).

While the former is of course supported just fine the latter is not and
IIRC doing so would be very difficult for a PV kernel due to the way the
interfaces are constructed (e.g. to p2m entries change size, the maximum
addressable machine address changes).

Yes, this is a massive Pain In The A**.

Ian.




reply via email to

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