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

[lvm-devel] [PATCH pvmove 0/6] Refactoring pvmove with generic APIs


This patchset is a follow up to the previous post:

This version introduces 3 APIs and let pvmove use them:
  - insert_layer_for_segments_on_pv()
      Insert a layer (a linear lv segment) below each lv segment
      of the LV, only when the segment is on a specified PV.
  - convert_segments_mirrored()
      Convert each segment in the LV to mirrored.
  - split_parent_segments()
      For a given layer LV, walk through LVs in the VG and split
      any LV segment whose underlying layer segment is splitted.

I'm trying to add functionality for lvconvert, i.e. mirroring
as a whole LV, not segment by segment.
However, it involves moving some codes from toollib to lib and
I think further discussion may be necessary.
And anyway they will be an addition to this patchset.

So I'm posting this set first as they are stable and easy to review.

[1/6] add insert_layer_for_segments_on_pv()
[2/6] add convert_segments_mirrored()
[3/6] add split_parent_segments()
[4/6] change pvmove to use the generalized APIs
[5/6] remove unused mirrored_pv/mirrored_pe params from internal code
[6/6] remove unused can_split param from allocate_extents()
[Appendix] pvmove test script for 'make check'

Jun'ichi Nomura, NEC Corporation of America

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