[parted-devel] [PATCH] libparted/dasd: improve lvm/raid flag handling for DASD-CDL

Hendrik Brueckner brueckner at linux.vnet.ibm.com
Tue May 23 09:31:33 UTC 2017


From: André Wild <wild at linux.vnet.ibm.com>

Hi,

there was already a discussion in March/April, see also

http://lists.alioth.debian.org/pipermail/parted-devel/2017-March/004991.html
http://lists.alioth.debian.org/pipermail/parted-devel/2017-April/005005.html

After some discussion, there was a conclusion on this patch below to remove
the file system check.

Thanks and kind regards,
  Hendrik

---->8-------------------------

This commit corrects the reading of lvm/raid flags on DASD/CDL formatted
disks. Previously, users were not able to see what was the actual flags
stored on the disk. Now the file system check is removed and this issue
is corrected.

Fixes: c8873b0044c8 ("When reading the DASD disk label, ...")
Signed-off-by: André Wild <wild at linux.vnet.ibm.com>
Signed-off-by: Wang Dong <dongdwdw at linux.vnet.ibm.com>
Signed-off-by: Hendrik Brueckner <brueckner at linux.vnet.ibm.com>
---
 libparted/labels/dasd.c | 15 +++------------
 1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/libparted/labels/dasd.c b/libparted/labels/dasd.c
index 632ec8e..ab97105 100644
--- a/libparted/labels/dasd.c
+++ b/libparted/labels/dasd.c
@@ -446,18 +446,9 @@ dasd_read (PedDisk* disk)
 		}
 
 		dasd_data = part->disk_specific;
-
-		if ((strncmp(PART_TYPE_RAID, str, 6) == 0) &&
-		    (ped_file_system_probe(&part->geom) == NULL))
-			ped_partition_set_flag(part, PED_PARTITION_RAID, 1);
-		else
-			ped_partition_set_flag(part, PED_PARTITION_RAID, 0);
-
-		if ((strncmp(PART_TYPE_LVM, str, 6) == 0) &&
-		    (ped_file_system_probe(&part->geom) == NULL))
-			ped_partition_set_flag(part, PED_PARTITION_LVM, 1);
-		else
-			ped_partition_set_flag(part, PED_PARTITION_LVM, 0);
+		dasd_data->raid = !strncmp(PART_TYPE_RAID, str, 6);
+		dasd_data->lvm = !strncmp(PART_TYPE_LVM, str, 6);
+		dasd_partition_set_system(part, part->fs_type);
 
 		if (strncmp(PART_TYPE_SWAP, str, 6) == 0) {
 			fs = ped_file_system_probe(&part->geom);
-- 
1.8.3.1




More information about the parted-devel mailing list