[PATCH] Create a min_max constraint to avoid alignments issues.

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

 



---
 storage/partitioning.py |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/storage/partitioning.py b/storage/partitioning.py
index e69ff1b..6fe8ec8 100644
--- a/storage/partitioning.py
+++ b/storage/partitioning.py
@@ -770,11 +770,21 @@ def allocatePartitions(disks, partitions):
                                    start=max(sectors_per_track, free.start),
                                    length=length)
 
+        # create maximum and minimum geometries for constraint
+        start = max(0 , free.start - 1)
+        max_geom = parted.Geometry(device=disk.device,
+                                   start=start,
+                                   length=min(length + 1, disk.device.length - start))
+        min_geom = parted.Geometry(device=disk.device,
+                                   start=free.start + 1,
+                                   length=length-1)
+
+
         # create the partition and add it to the disk
         partition = parted.Partition(disk=disk,
                                      type=part_type,
                                      geometry=new_geom)
-        constraint = parted.Constraint(exactGeom=new_geom)
+        constraint = parted.Constraint(maxGeom=max_geom, minGeom=min_geom)
         disk.addPartition(partition=partition,
                           constraint=constraint)
         log.debug("created partition %s of %dMB and added it to %s" %
-- 
1.6.0.6

_______________________________________________
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