1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00

lvconvert: fix regression preventing direct striped conversion

Conversion to striped from raid0/raid0_meta is directly possible.

Fix a regression setting superfluous interim raid5_n conversion type
introduced by commit bd7cdd0b09.

Add new test script lvconvert-raid0-striped.sh.

Resolves: rhbz1608067
This commit is contained in:
Heinz Mauelshagen 2018-08-21 17:12:33 +02:00
parent 8b05f1f230
commit 4578411633
3 changed files with 29 additions and 0 deletions

View File

@ -1,5 +1,6 @@
Version 3.0.0
=============
Fix lvconvert raid0/raid0_meta -> striped regression.
Fix lvconvert --splitmirror for mirror type (2.02.178).
Do not pair cache policy and cache metadata format.
lvconvert: reject conversions on raid1 LVs with split tracked SubLVs

View File

@ -6126,6 +6126,9 @@ static int _set_convenient_raid145610_segtype_to(const struct lv_segment *seg_fr
if (seg_from->area_count == 1)
seg_flag = SEG_RAID1;
else if (seg_is_any_raid0(seg_from) && segtype_is_striped(*segtype))
;
/* If this is any raid5 conversion request -> enforce raid5_n, because we convert from striped */
else if (((segtype_is_striped(*segtype) && !segtype_is_any_raid0(*segtype)) || segtype_is_any_raid5(*segtype)) &&
!segtype_is_raid5_n(*segtype))

View File

@ -0,0 +1,25 @@
#!/usr/bin/env bash
# Copyright (C) 2018 Red Hat, Inc. All rights reserved.
#
# This copyrighted material is made available to anyone wishing to use,
# modify, copy, or redistribute it subject to the terms and conditions
# of the GNU General Public License v.2.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
SKIP_WITH_LVMPOLLD=1
. lib/inittest
aux have_raid 1 7 0 || skip
aux prepare_vg 3 16
lvcreate -aey --type raid0 -i 3 -l3 -n $lv $vg
lvconvert -y --type striped $vg/$lv
check lv_field $vg/$lv segtype "striped"
vgremove -ff $vg