On Fri, Nov 29, 2013 at 09:44:27PM +0400, Andrey Borzenkov wrote: > В Fri, 29 Nov 2013 13:24:22 +0000 > Colin Watson <cjwat...@ubuntu.com> пишет: > > 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 [cjwat...@ubuntu.com] _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel