mirror of
git://sourceware.org/git/lvm2.git
synced 2025-03-28 02:50:41 +03:00
vgsplit: Don't skip moving internal snapshot LV.
Also place snapshot LV handling back at the end, after all possible origin and cow LVs got dealt with.
This commit is contained in:
parent
4d4f48af9f
commit
dfcdfa057b
@ -190,10 +190,6 @@ static int _move_snapshots(struct volume_group *vg_from,
|
||||
if (!(lv->status & SNAPSHOT))
|
||||
continue;
|
||||
|
||||
/* Ignore, if no allocations on PVs of @vg_to */
|
||||
if (!lv_is_on_pvs(lv, &vg_to->pvs))
|
||||
continue;
|
||||
|
||||
dm_list_iterate_items(seg, &lv->segments) {
|
||||
cow_from = _lv_is_in_vg(vg_from, seg->cow);
|
||||
origin_from = _lv_is_in_vg(vg_from, seg->origin);
|
||||
@ -680,17 +676,18 @@ int vgsplit(struct cmd_context *cmd, int argc, char **argv)
|
||||
if (!(_move_mirrors(vg_from, vg_to)))
|
||||
goto_bad;
|
||||
|
||||
/* Move required snapshots across */
|
||||
if (!(_move_snapshots(vg_from, vg_to)))
|
||||
goto_bad;
|
||||
|
||||
/* Move required pools across */
|
||||
if (!(_move_thins(vg_from, vg_to)))
|
||||
goto_bad;
|
||||
|
||||
/* Move required cache LVs across */
|
||||
if (!(_move_cache(vg_from, vg_to)))
|
||||
goto_bad;
|
||||
|
||||
/* Move required snapshots across */
|
||||
if (!(_move_snapshots(vg_from, vg_to)))
|
||||
goto_bad;
|
||||
|
||||
/* Split metadata areas and check if both vgs have at least one area */
|
||||
if (!(vg_split_mdas(cmd, vg_from, vg_to)) && vg_from->pv_count) {
|
||||
log_error("Cannot split: Nowhere to store metadata for new Volume Group");
|
||||
|
Loading…
x
Reference in New Issue
Block a user