diff options
author | Jeremy Katz <katzj@redhat.com> | 2001-06-26 22:49:03 +0000 |
---|---|---|
committer | Jeremy Katz <katzj@redhat.com> | 2001-06-26 22:49:03 +0000 |
commit | d0625fe5a04a40bdd8f8873195f2ab41bc43a101 (patch) | |
tree | 6817118db545aca54b4805ce13870fa7f5626cb9 /partitioning.py | |
parent | 4f4c64552c1d924a26df77df7c3090d4a7b63770 (diff) | |
download | anaconda-d0625fe5a04a40bdd8f8873195f2ab41bc43a101.tar.gz anaconda-d0625fe5a04a40bdd8f8873195f2ab41bc43a101.tar.xz anaconda-d0625fe5a04a40bdd8f8873195f2ab41bc43a101.zip |
land new autopartitioning code... should be faster and better.
also, fix up some bits so we don't refreshdevices as often
Diffstat (limited to 'partitioning.py')
-rw-r--r-- | partitioning.py | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/partitioning.py b/partitioning.py index babb6e847..52043043f 100644 --- a/partitioning.py +++ b/partitioning.py @@ -26,6 +26,7 @@ import fsset import os from translate import _ from log import log +from constants import * from flags import flags # different types of partition requests @@ -86,8 +87,27 @@ def end_cyl_to_sector(device, cyl): return long(((cyl) * (device.heads * device.sectors)) - 1) def getPartSize(partition): + return partition.geom.length + +def getPartSizeMB(partition): return partition.geom.length * partition.geom.disk.dev.sector_size / 1024.0 / 1024.0 +def get_partition_by_name(disks, partname): + for diskname in disks.keys(): + disk = disks[diskname] + part = disk.next_partition() + while part: + if part.type & parted.PARTITION_FREESPACE or part.type & parted.PARTITION_METADATA: + part = disk.next_partition(part) + continue + + if get_partition_name(part) == partname: + return part + + part = disk.next_partition(part) + + return None + def get_partition_name(partition): if (partition.geom.disk.dev.type == parted.DEVICE_DAC960 or partition.geom.disk.dev.type == parted.DEVICE_CPQARRAY): @@ -836,9 +856,13 @@ class DiskSet: part = disk.next_partition(part) return rc -def partitionObjectsInitialize(id): +def partitionObjectsInitialize(id, dir): + if dir == DISPATCH_BACK: + return + # read in drive info id.diskset = DiskSet() + id.diskset.refreshDevices() id.partrequests = PartitionRequests(id.diskset) def partitionMethodSetup(id, dispatch): |