[parted-devel] [PATCH] parted: fix build error on s390

Viktor Mihajlovski mihajlov at linux.vnet.ibm.com
Thu Oct 29 20:12:01 UTC 2015


From: Colin Watson <cjwatson at ubuntu.com>

The preceding dasd probing patches have introduced a compile error
when building with blkid support. Fixed by reordering function
definitions.

Signed-off-by: Colin Watson <cjwatson at ubuntu.com>
Signed-off-by: Viktor Mihajlovski <mihajlov at linux.vnet.ibm.com>
---

A really silly error. Found and fixed by Colin Watson in 
the Debian parted package, thanks for that.

 libparted/arch/linux.c | 106 ++++++++++++++++++++++++-------------------------
 1 file changed, 53 insertions(+), 53 deletions(-)

diff --git a/libparted/arch/linux.c b/libparted/arch/linux.c
index 9344ceb..1198f52 100644
--- a/libparted/arch/linux.c
+++ b/libparted/arch/linux.c
@@ -3184,59 +3184,6 @@ linux_disk_commit (PedDisk* disk)
         return 1;
 }
 
-#if defined __s390__ || defined __s390x__
-/**
- * Check whether this device could be a DASD
- *
- * The device probing yields PED_DEVICE_DASD for native DASD transport
- * If the block device uses a different transport (e.g. virtio)
- * a simplified heuristic (assuming a model 3390 with 4K sectors)
- * is applied (only) on s390x systems for this check.
- *
- * \return 1 if the geometry indicates this could be a DASD
- *         and 0 otherwise
- */
-static int
-_ped_device_like_dasd(const PedDevice *dev)
-{
-        return (dev->type == PED_DEVICE_DASD)
-          || (dev->hw_geom.heads == 15
-              && dev->hw_geom.sectors == 12
-              && (dev->hw_geom.cylinders
-                  * dev->hw_geom.heads
-                  * dev->hw_geom.sectors
-                  * dev->phys_sector_size
-                  == dev->length * dev->sector_size));
-}
-
-
-
-static PedAlignment*
-s390_get_minimum_alignment(const PedDevice *dev)
-{
-#if USE_BLKID
-        return linux_get_minimum_alignment(dev);
-#else
-        return ped_alignment_new(0,
-                                 dev->phys_sector_size
-                                 / dev->sector_size);
-#endif
-}
-
-static PedAlignment*
-s390_get_optimum_alignment(const PedDevice *dev)
-{
-        /* DASD needs to use minimum alignment */
-        if (_ped_device_like_dasd(dev))
-                return s390_get_minimum_alignment(dev);
-#if USE_BLKID
-        return linux_get_optimum_alignment(dev);
-#else
-        return NULL;
-#endif
-}
-#endif
-
 #if USE_BLKID
 static PedAlignment*
 linux_get_minimum_alignment(const PedDevice *dev)
@@ -3293,6 +3240,59 @@ linux_get_optimum_alignment(const PedDevice *dev)
 }
 #endif
 
+#if defined __s390__ || defined __s390x__
+/**
+ * Check whether this device could be a DASD
+ *
+ * The device probing yields PED_DEVICE_DASD for native DASD transport
+ * If the block device uses a different transport (e.g. virtio)
+ * a simplified heuristic (assuming a model 3390 with 4K sectors)
+ * is applied (only) on s390x systems for this check.
+ *
+ * \return 1 if the geometry indicates this could be a DASD
+ *         and 0 otherwise
+ */
+static int
+_ped_device_like_dasd(const PedDevice *dev)
+{
+        return (dev->type == PED_DEVICE_DASD)
+          || (dev->hw_geom.heads == 15
+              && dev->hw_geom.sectors == 12
+              && (dev->hw_geom.cylinders
+                  * dev->hw_geom.heads
+                  * dev->hw_geom.sectors
+                  * dev->phys_sector_size
+                  == dev->length * dev->sector_size));
+}
+
+
+
+static PedAlignment*
+s390_get_minimum_alignment(const PedDevice *dev)
+{
+#if USE_BLKID
+        return linux_get_minimum_alignment(dev);
+#else
+        return ped_alignment_new(0,
+                                 dev->phys_sector_size
+                                 / dev->sector_size);
+#endif
+}
+
+static PedAlignment*
+s390_get_optimum_alignment(const PedDevice *dev)
+{
+        /* DASD needs to use minimum alignment */
+        if (_ped_device_like_dasd(dev))
+                return s390_get_minimum_alignment(dev);
+#if USE_BLKID
+        return linux_get_optimum_alignment(dev);
+#else
+        return NULL;
+#endif
+}
+#endif
+
 static PedDeviceArchOps linux_dev_ops = {
         _new:           linux_new,
         destroy:        linux_destroy,
-- 
1.9.1




More information about the parted-devel mailing list