summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Katz <katzj@redhat.com>2003-09-16 22:18:59 +0000
committerJeremy Katz <katzj@redhat.com>2003-09-16 22:18:59 +0000
commit4f1cc6ac4bea21b627dff6eedc2ae87e443b7adb (patch)
tree8590f901862ebbda072ba9f7d5f57dae4d73b541
parent7ea8efefb56871c3a4743f9a4773f49ba5f4f436 (diff)
downloadanaconda-4f1cc6ac4bea21b627dff6eedc2ae87e443b7adb.tar.gz
anaconda-4f1cc6ac4bea21b627dff6eedc2ae87e443b7adb.tar.xz
anaconda-4f1cc6ac4bea21b627dff6eedc2ae87e443b7adb.zip
only allow /boot on raid for i386 and x86_64 (#104431)
-rw-r--r--partitions.py8
-rw-r--r--raid.py4
2 files changed, 11 insertions, 1 deletions
diff --git a/partitions.py b/partitions.py
index f241f4c3b..8910dc791 100644
--- a/partitions.py
+++ b/partitions.py
@@ -865,7 +865,6 @@ class Partitions:
bootreqs = self.getBootableRequest()
if bootreqs:
for bootreq in bootreqs:
- # XXX 390 can't have boot on RAID
if (bootreq and
(isinstance(bootreq, partRequests.RaidRequestSpec)) and
(not raid.isRaid1(bootreq.raidlevel))):
@@ -879,6 +878,13 @@ class Partitions:
errors.append(_("Bootable partitions cannot be on a "
"logical volume."))
+ # most arches can't have boot on RAID
+ if (bootreq and
+ (isinstance(bootreq, partRequests.RaidRequestSpec)) and
+ (iutil.getArch() not in raid.raidBootArches)):
+ errors.append("Bootable partitions cannot be on a RAID "
+ "device.")
+
if foundSwap == 0:
warnings.append(_("You have not specified a swap partition. "
"Although not strictly required in all cases, "
diff --git a/raid.py b/raid.py
index 60fd733e5..d489f5409 100644
--- a/raid.py
+++ b/raid.py
@@ -23,6 +23,10 @@ import partedUtils
from rhpl.log import log
+# these arches can have their /boot on RAID and not have their
+# boot loader blow up
+raidBootArches = [ "i386", "x86_64" ]
+
def scanForRaid(drives):
"""Scans for raid devices on drives.