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

Re: [PATCH] Enable support for bootloader on md RAID1 partitions.


Can you explain in a bit more detail, what (and how) is exactly going wrong
at the moment, and how your patch fixes this ?

IOW how did you come to the conclusion that even if you select partition that
grub will end up on the mbr ?  And if this was through testing, have you
also been able to reconstruct the code path leading to this behaviour ?

And can you explain what that code path looks like ?

Note I'm not saying your patch or analysis is wrong, I'm just trying to
understand whats going on and how your patch fixes it.



On 06/26/2009 05:39 PM, Radek Vykydal wrote:
In f10, for /boot on md raid 1 we used to have only option to install
bootloader on partition but in fact, we installed on MBR. In f11 we added
option to instal to MBR in UI, and we are still installing on MBR for both
options.  In rhel 5 we are always installing bootloader on MBR too.  Also
grub-install /dev/md0 installs on MBR, so maybe this is not something we want
to do at all, but in that case, we should probably remove the option to install
bootloader on /dev/md0 raid device from UI.

Patch is tested to work, but feels a bit lame to me, maybe it calls for
bigger cleanup of booty. Also there may be coming some changes in md devices

If we allow (start to do) installing on md raid partitions, upgrade should be
patched to count with this possibility. A little problem is that up to f11
boot=/dev/md0 we write into /etc/sysconfig/grub or grub.conf means that
bootloader was installed on mbr, and after patching it would mean that it is on
raid partitions.

  booty/x86.py |    4 +++-
  1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/booty/x86.py b/booty/x86.py
index d0972c8..09eb665 100644
--- a/booty/x86.py
+++ b/booty/x86.py
@@ -120,7 +120,7 @@ class x86BootloaderInfo(efiBootloaderInfo):

              stage1Target = gtDisk
              if target == "partition":
-                stage1Target = self.grubbyPartitionName(gtPart)
+                stage1Target = bPart

              cmd += "install %s%s/stage1 d %s %s/stage2 p %s%s/grub.conf" % \
                  (args, grubPath, stage1Target, grubPath, bPart, grubPath)
@@ -158,6 +158,8 @@ class x86BootloaderInfo(efiBootloaderInfo):
                      target = "partition"
          elif grubTarget[-1].isdigit() and not path.startswith('md'):
              target = "partition"
+        elif path.startswith('md') and not flags.cmdline.has_key("iswmd"):
+            target = "partition"

          f = open(cf, "w+")

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