[blivet][master/rhel7-branch] Make sure bootDevice is not LVM LV if we're on s390x (#873135)

Samantha N. Bueno sbueno+anaconda at redhat.com
Tue Dec 9 14:44:35 UTC 2014


On Tue, Dec 09, 2014 at 08:13:14AM -0500, Anne Mulhern wrote:
> I think that this code change should probably be in
> pyanaconda.kickstart.Bootloader.execute(), not in Blivet.setUpBootloader().
> 
> Also, since it's not just a kickstart but also a GUI bug, it might be good to
> also edit custom.CustomPartitioningSpoke._validateMountpoint()...or wherever
> that code is in RHEL7.

Err, wait, how is this also a GUI bug? The problem is that sanityCheck
is not ever called if a user explicitly defines partition info in
kickstart, so the stage2 device check is never performed. If you try and
put /boot on LVM performing a manual installation, it is not allowed
(which is correct behavior).

That said, I discussed this with bcl in IRC yesterday evening; he
pointed out it would be better to put this check somewhere like
LogVolData, so I re-wrote my patch....I'll add some commentary to it and
post it.

Samantha

> 
> - mulhern
> 
> ----- Original Message -----
> > From: "Samantha N. Bueno" <sbueno+anaconda at redhat.com>
> > To: anaconda-patches at lists.fedorahosted.org
> > Sent: Monday, December 8, 2014 4:35:46 PM
> > Subject: [blivet][master/rhel7-branch] Make sure bootDevice is not LVM LV if	we're on s390x (#873135)
> > 
> > For whatever reason, during s390x ks installations, if you tried to
> > set /boot on LVM, it would be allowed. Well, don't allow it.
> > 
> > Resolves: rhbz#873135
> > ---
> >  blivet/__init__.py | 4 ++++
> >  1 file changed, 4 insertions(+)
> > 
> > diff --git a/blivet/__init__.py b/blivet/__init__.py
> > index 483f97d..d410bb3 100644
> > --- a/blivet/__init__.py
> > +++ b/blivet/__init__.py
> > @@ -1820,6 +1820,10 @@ class Blivet(object):
> >              log.info("user specified that bootloader install be skipped")
> >              return
> >  
> > +        # Make sure bootDevice is not LVM LV if we're on s390x
> > +        if arch.isS390() and self.bootDevice.type == "lvmlv":
> > +            raise StorageError("/boot can not be of type 'lvmlv' on s390x")
> > +
> >          # Need to make sure bootDrive has been setup from the latest
> >          information
> >          self.ksdata.bootloader.execute(self, self.ksdata, None)
> >          self.bootloader.stage1_disk =
> >          self.devicetree.resolveDevice(self.ksdata.bootloader.bootDrive)
> > --
> > 1.8.3.1
> > 
> > _______________________________________________
> > anaconda-patches mailing list
> > anaconda-patches at lists.fedorahosted.org
> > https://lists.fedorahosted.org/mailman/listinfo/anaconda-patches
> > 
> _______________________________________________
> anaconda-patches mailing list
> anaconda-patches at lists.fedorahosted.org
> https://lists.fedorahosted.org/mailman/listinfo/anaconda-patches


More information about the anaconda-patches mailing list