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

Re: [master] Clean up partitioning and rework partition growing


On 10/29/2009 05:55 PM, David Lehman wrote:
  partitioning.py |  931 +++++++++++++++++++++++++++++++++++++++-----------------
  1 file changed, 657 insertions(+), 274 deletions(-)

Lots of cleanups to partitioning code in general. The functional changes
are how we allocate growable partitions and the addition of per-disk
partition alignment.

Partition growing is completely reimplemented. A map of free space regions
is collected prior to partition allocation. During partition allocation we
choose which disk each growable partition will be allocated from, as well
as which free space region on that disk. Partitions are grown as a group
within each free space region. Growth rates are determined by the relative
base sizes of the partitions within a free space region.

All new partitions are aligned for the device from which they are
allocated. For now, getDiskAlignment returns an alignment with offset 0
and grainSize of 1 sector, which is sort of a no-op alignment. Once
pyparted exports functions/methods to determine the minimal alignment of
devices we can replace this no-op alignment with the real deal.

1-3 look good


The parted code underlying this still needs to be upstreamed, so the API
may change.

Also this will not work with dasd which needs partition bounderies
aligned to a multiple of its block size, but I expect this to be covered by
the later alignment patches (which can get the parted alignment constraints
from parted with the changes I recently made).

5-7 look ok

8: see inline comment (separate reply)

9: looks ok



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