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

[PATCH 3/4] Add handling for mpath and fwraid devices in exclusiveDisks.



Also, ignore mpath and fwraid member disks if they are not in
exclusiveDisks since they are disks.

Related: rhbz#596468
---
 storage/devicetree.py |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/storage/devicetree.py b/storage/devicetree.py
index 6a167e9..7675582 100644
--- a/storage/devicetree.py
+++ b/storage/devicetree.py
@@ -933,11 +933,19 @@ class DeviceTree(object):
                     self.exclusiveDisks[i] = name
                     return False
 
+        # We want exclusiveDisks to operate on anything that could be
+        # considered a directly usable disk, ie: fwraid array, mpath, or disk.
+        #
+        # Unfortunately, since so many things are represented as disks by
+        # udev/sysfs, we have to define what is a disk in terms of what is
+        # not a disk.
         if udev_device_is_disk(info) and \
-                not udev_device_is_md(info) and \
-                not udev_device_is_dm(info) and \
-                not udev_device_is_biosraid(info) and \
-                not udev_device_is_multipath_member(info):
+           not udev_device_is_dmraid_partition(info) and \
+           not udev_device_is_multipath_partition(info) and \
+           not udev_device_is_dm_lvm(info) and \
+           not udev_device_is_dm_crypt(info) and \
+           not (udev_device_is_md(info) and
+                not udev_device_get_md_container(info)):
             if self.exclusiveDisks and name not in self.exclusiveDisks:
                 self.addIgnoredDisk(name)
                 return True
-- 
1.7.1.1


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