[PATCH 2/6] Make sure MultipathDevice is setup correctly.

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

 



Make sure exists is set when creating MultipathDevice, as well as any
other ancillary data.  Also revamp MultipathDevice.status since we now
can create it in realtime like everything else does.
---
 storage/devices.py |   25 +++++++++++++++----------
 1 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/storage/devices.py b/storage/devices.py
index 4137d4f..ab4739a 100644
--- a/storage/devices.py
+++ b/storage/devices.py
@@ -2935,7 +2935,8 @@ class MultipathDevice(DMDevice):
         self._pyBlockMultiPath = None
         self.setupIdentity()
         DMDevice.__init__(self, name, format=format, size=size,
-                          parents=parents, sysfsPath=sysfsPath)
+                          parents=parents, sysfsPath=sysfsPath,
+                          exists=True)
 
         # PJTODO: these need better setup
         self.config = {
@@ -2958,8 +2959,8 @@ class MultipathDevice(DMDevice):
         
             May be overridden by a sub-class for e.g. RDAC handling.
         """
-        self._serial_short = self._info['ID_SERIAL_SHORT']
-        self._serial = self._info['ID_SERIAL']
+        self._identity_short = self._info['ID_SERIAL_SHORT']
+        self._identity = self._info['ID_SERIAL']
 
     @property
     def identity(self):
@@ -2967,21 +2968,25 @@ class MultipathDevice(DMDevice):
         
             May be overridden by a sub-class for e.g. RDAC handling.
         """
-        if not hasattr(self, "_serial"):
+        if not hasattr(self, "_identity"):
             raise RuntimeError, "setupIdentityFromInfo() has not been called."
-        return self._serial
+        return self._identity
 
     @property
     def status(self):
-        return self._isUp
+        """ The device's status (True means active). """
+        if not os.path.exists(self.path):
+            return False
+
+        return True
 
     @property
     def wwid(self):
-        serial = self._serial_short
+        identity = self._identity_short
         ret = []
-        while serial:
-            ret.append(serial[:2])
-            serial = serial[2:]
+        while identity:
+            ret.append(identity[:2])
+            identity = identity[2:]
         return ":".join(ret)
 
     @property
-- 
1.6.5.2

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

[Index of Archives]     [Kickstart]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]
  Powered by Linux