This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-users] Xen 3.4.1: pygrub Error: Boot loader didn't return any

On Fri, Jan 1, 2010 at 1:03 AM, Gerry Reno <greno@xxxxxxxxxxx> wrote:
> The more I thought about this the more I think this is not a distro problem.
>  It is a pygrub deficiency and pygrub needs to grow the ability to handle
> these types of partitionings.

AFAIK the "original" DOS MBR is only able to boot from primary,
bootable partition. Other distros (RHEL for example) honors that.

pygrub is not perfect. In this particular case, it's using the
partition information to simply determine which partition contains the
grub config file. It behaves similar to DOS MBR, in that it looks for
primary, bootable partition. This has worked good enough so far.

You could probably make it work with Ubuntu's partitioning scheme.
However my guess is the developers have more important things in on
their hands, so if you want it fixed you should submit patches
(similar to Sun, which has contributed patches that allows pygrub to
work with zfs).

>  KVM has no problem booting these guests.

That's because KVM (and also Xen HVM) reads and executes the code in
the disk's MBR (in your case, grub). pygrub doesn't.

>  And
> even though the partitioning isn't optimal it is still valid.  We can't go
> asking distros to modify their valid partitioning just to make it 'optimal'
> for pygrub.

Not to make it "optimal" for pygrub. Make it compatible with legacy
DOS MBR and other bootloaders.

As a side not, you MIGHT be able to use pvgrub. It uses something like
this on domU config file


Since the config file is specified directly as "extra" line, it should
not need to use the information in partition table to determine which
partition is active.


Xen-users mailing list

<Prev in Thread] Current Thread [Next in Thread>