summaryrefslogtreecommitdiffstats
path: root/storage/partitioning.py
diff options
context:
space:
mode:
Diffstat (limited to 'storage/partitioning.py')
-rw-r--r--storage/partitioning.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/storage/partitioning.py b/storage/partitioning.py
index b6459339b..d912db93f 100644
--- a/storage/partitioning.py
+++ b/storage/partitioning.py
@@ -792,7 +792,7 @@ def doPartitioning(storage, exclusiveDisks=None):
removeNewPartitions(disks, partitions)
free = getFreeRegions(disks)
- allocatePartitions(disks, partitions, free)
+ allocatePartitions(storage, disks, partitions, free)
growPartitions(disks, partitions, free)
# The number and thus the name of partitions may have changed now,
@@ -840,7 +840,7 @@ def doPartitioning(storage, exclusiveDisks=None):
# moment to simplify things
storage.devicetree._addDevice(device)
-def allocatePartitions(disks, partitions, freespace):
+def allocatePartitions(storage, disks, partitions, freespace):
""" Allocate partitions based on requested features.
Non-existing partitions are sorted according to their requested
@@ -888,6 +888,7 @@ def allocatePartitions(disks, partitions, freespace):
# no disks specified means any disk will do
req_disks = disks
+ req_disks.sort(key=lambda d: d.name, cmp=storage.compareDisks)
log.debug("allocating partition: %s ; id: %d ; disks: %s ;\n"
"boot: %s ; primary: %s ; size: %dMB ; grow: %s ; "
"max_size: %s" % (_part.name, _part.id, req_disks,