bug-grub
[Top][All Lists]
Advanced

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

[bug #33194] Grub-probe fails for LVM volume groups which contain a mirr


From: Pete Chown
Subject: [bug #33194] Grub-probe fails for LVM volume groups which contain a mirrored LV
Date: Sun, 01 May 2011 19:17:19 +0000
User-agent: Mozilla/5.0 (X11; Linux i686; rv:2.0.1) Gecko/20100101 Firefox/4.0.1

URL:
  <http://savannah.gnu.org/bugs/?33194>

                 Summary: Grub-probe fails for LVM volume groups which contain
a mirrored LV
                 Project: GNU GRUB
            Submitted by: pchown
            Submitted on: Sun 01 May 2011 19:17:14 GMT
                Category: Installation
                Severity: Major
                Priority: 5 - Normal
              Item Group: Software Error
                  Status: None
                 Privacy: Public
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 
                 Release: other
         Reproducibility: Every Time
         Planned Release: None

    _______________________________________________________

Details:

With LVM it is possible to create logical volumes which are mirrored across a
number of the physical volumes in the volume group.  If a volume group
contains one or more of these volumes, grub-probe generally fails.

To avoid any confusion, I am talking about using the mirroring feature which
is built into LVM (lvcreate -m1 etc.).  I'm not talking about the /dev/mdX
type of mirroring.

When grub-probe looks at a volume group containing a mirror set, it attempts
to parse the configuration by calling grub_lvm_scan_device.  This function
looks for a line in the configuration information for each logical volume that
matches "stripes = [" (grub-core/disk/lvm.c line 608).

If the volume is a mirror set, it doesn't contain a list of stripes.  Instead
it contains a list of pointers to other logical volumes.  (One of those
volumes is the mirror log, and the others represent the redundant copies of
the data.)  As a result, the call on line 608 doesn't match where it should. 
Instead of matching somewhere in the current logical volume, it matches in the
first subsequent volume which is not a mirror set.

As a result, grub-probe skips a number of LVs, and then mixes two volumes'
configuration information together.  Usually this causes an error but I think
it could also cause grub-probe to return wrong information.

I am using Grub from Ubuntu Natty, grub2_1.99~rc1-13ubuntu3.  I'm also running
Natty amd64.  This problem exists with the desktop and server builds.  I
haven't tested the 32-bit builds but based on the above, it seems likely that
they would suffer from the problem too.

I hope this is helpful and please ask if you need any more information.




    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?33194>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

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