[rhel7-branch 6/6] Use a safer method to get a dm partition's disk name.

dwlehman installerbot-noreply at redhat.com
Fri May 29 17:35:15 UTC 2015


From: David Lehman <dlehman at redhat.com>

Resolves: rhbz#1190886
Related: rhbz#1181336
---
 blivet/udev.py | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/blivet/udev.py b/blivet/udev.py
index dd9b2d9..d84d88e 100644
--- a/blivet/udev.py
+++ b/blivet/udev.py
@@ -526,7 +526,19 @@ def device_is_biosraid_member(info):
     return False
 
 def device_get_dm_partition_disk(info):
-    return re.sub(r'p?\d*$', '', device_get_name(info))
+    if not device_is_dm_partition(info):
+        return None
+
+    disk = None
+    majorminor = info.get("ID_PART_ENTRY_DISK")
+    if majorminor:
+        major, minor = majorminor.split(":")
+        for device in get_devices():
+            if device.get("MAJOR") == major and device.get("MINOR") == minor:
+                disk = device_get_name(device)
+                break
+
+    return disk
 
 def device_is_dm_partition(info):
     return (device_is_dm(info) and


-- 
To view this commit on github, visit https://github.com/rhinstaller/blivet/commit/d1d6ccb7412e02f60930854c6aa1e0a4e9d04e43


More information about the anaconda-patches mailing list