All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH pvmove 0/9] Refactoring pvmove with generic APIs (rev. 3)
@ 2007-12-13 20:40 Jun'ichi Nomura
  2007-12-13 21:03 ` [PATCH pvmove 1/9] Add insert_layer_for_segments_on_pv() Jun'ichi Nomura
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Jun'ichi Nomura @ 2007-12-13 20:40 UTC (permalink / raw)
  To: lvm-devel

Hi,

This patchset is a follow up to the previous posts:
https://www.redhat.com/archives/lvm-devel/2007-November/msg00034.html
https://www.redhat.com/archives/lvm-devel/2007-December/msg00010.html

I found that I didn't generalize the removal-side of pvmove code.
This version adds generic APIs for removing mirrors and layers
for segment-by-segment mirroring.

So we have:
  - 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.
  - remove_layer_for_segments_all()
      Remove the layer from all LVs

  - split_parent_segments_for_layer()
      For a given layer LV, walk through LVs in the VG and split
      any LV segment whose underlying layer segment is splitted.

  - add_mirrors_to_segments()
  - remove_mirrors_from_segments()
      Add mirrors to each segment of the LV

I'll follow up this patchset with generic APIs for lvconvert-type
mirroring, i.e. mirroring as a whole LV.

The 7th to 9th patches are newly added.
Other patches are slightly modified to cope with the name changes
and also for better comments, error messages and generalization.
It might be better to move new ones to earlier part and change
pvmove at once. But I kept the ordering for ease of the reviews.
Changes are mentioned in the header of each patch.

[1/9] add insert_layer_for_segments_on_pv()
[2/9] add add_mirrors_to_segments()
[3/9] add split_parent_segments_for_layer()
[4/9] change pvmove to use the generalized APIs
[5/9] remove unused mirrored_pv/mirrored_pe params from internal code
[6/9] remove unused can_split param from allocate_extents()
[7/9] add remove_mirrors_from_segments() and remove_layer_from_segments()
[8/9] change pvmove to use the generalized removal APIs
[9/9] remove unused remove_pvmove_mirrors() function
[Appendix] pvmove test script for 'make check'

Thanks,
-- 
Jun'ichi Nomura, NEC Corporation of America



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2007-12-13 21:04 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-13 20:40 [PATCH pvmove 0/9] Refactoring pvmove with generic APIs (rev. 3) Jun'ichi Nomura
2007-12-13 21:03 ` [PATCH pvmove 1/9] Add insert_layer_for_segments_on_pv() Jun'ichi Nomura
2007-12-13 21:03 ` [PATCH pvmove 2/9] Add add_mirrors_to_segments() Jun'ichi Nomura
2007-12-13 21:03 ` [PATCH pvmove 3/9] Add split_parent_segments_for_layer() Jun'ichi Nomura
2007-12-13 21:03 ` [PATCH pvmove 4/9] Change pvmove to use the generalized APIs Jun'ichi Nomura
2007-12-13 21:03 ` [PATCH pvmove 5/9] Remove unused mirrored_pv/mirrored_pe params from internal code Jun'ichi Nomura
2007-12-13 21:03 ` [PATCH pvmove 6/9] Remove unused can_split param from allocate_extents() Jun'ichi Nomura
2007-12-13 21:03 ` [PATCH pvmove 7/9] Add remove_mirrors_from_segments() and remove_layer_from_segments() Jun'ichi Nomura
2007-12-13 21:04 ` [PATCH pvmove 8/9] Change pvmove to use the generalized mirror-removal APIs Jun'ichi Nomura
2007-12-13 21:04 ` [PATCH pvmove 9/9] Remove unused remove_pvmove_mirrors() Jun'ichi Nomura
2007-12-13 21:04 ` [PATCH pvmove Appendix] pvmove test cases for 'make check' Jun'ichi Nomura

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.