From 3fc37a9ca8f74109667f18f2a87ca10c2731f2eb Mon Sep 17 00:00:00 2001 From: Daniel Hokka Zakrisson Date: Mon, 26 Jul 2010 15:31:51 -0400 Subject: [PATCH] cciss fix and cleaner way to reach the partition. --- plugins/rawdisk.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/plugins/rawdisk.py b/plugins/rawdisk.py index 89ba052..6d6e0f0 100644 --- a/plugins/rawdisk.py +++ b/plugins/rawdisk.py @@ -33,7 +33,8 @@ def get_unused_devices(): for i in os.listdir("/sys/block"): if not i.startswith("dm-"): continue - in_vg.extend(os.listdir("/sys/block/%s/slaves" % i)) + in_vg.extend(map(lambda x: x.replace("!", "/"), + os.listdir("/sys/block/%s/slaves" % i))) # Read the list of partitions partitions = file("/proc/partitions", "r") pat = re.compile("\s+") @@ -44,7 +45,9 @@ def get_unused_devices(): buf = buf.strip() fields = re.split(pat, buf) dev = fields[-1] - if not dev.startswith("dm-") and dev.endswith("1") and dev not in in_vg: + if (not dev.startswith("dm-") and dev not in in_vg and + os.path.exists("/dev/%s" % dev) and + (os.minor(os.stat("/dev/%s" % dev).st_rdev) % 2) != 0): devices.append("/dev/%s" % dev) partitions.close() return devices -- 2.43.0