[PATCH 8/8] Propagate mount options for btrfs members to all volumes/subvolumes.

David Lehman dlehman at redhat.com
Tue Sep 16 16:41:11 UTC 2014


Resolves: rhbz#1095866
---
 blivet/devices.py | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/blivet/devices.py b/blivet/devices.py
index 70385b4..b3d2e05 100644
--- a/blivet/devices.py
+++ b/blivet/devices.py
@@ -5113,6 +5113,10 @@ class BTRFSVolumeDevice(BTRFSDevice, ContainerDevice):
         if label:
             self.name = label
 
+        if not self.exists:
+            # propagate mount options specified for members via kickstart
+            self.format.mountopts = self.parents[0].format.mountopts
+
     def _getSize(self):
         size = sum([d.size for d in self.parents])
         if self.dataLevel in (raid.RAID1, raid.RAID10):
@@ -5311,6 +5315,16 @@ class BTRFSSubVolumeDevice(BTRFSDevice):
 
         self.volume._addSubVolume(self)
 
+    def _setFormat(self, format):
+        """ Set the Device's format. """
+        super(BTRFSSubVolumeDevice, self)._setFormat(format)
+        if self.exists:
+            return
+
+        # propagate mount options specified for members via kickstart
+        opts = "%s,subvol=%s" % (self.volume.format.mountopts, self.name)
+        self.format.mountopts = opts
+
     @property
     def volume(self):
         """Return the first ancestor that is not a BTRFSSubVolumeDevice.
-- 
1.9.3



More information about the anaconda-patches mailing list