1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-10-26 17:25:10 +03:00

tests: vdo conversion updates

This commit is contained in:
Zdenek Kabelac 2024-05-10 00:24:23 +02:00
parent 868bd3b51e
commit d2c6866bdb
2 changed files with 20 additions and 5 deletions

View File

@ -30,26 +30,33 @@ prepare_lvs() {
#
aux have_thin 1 0 0 || skip
aux have_vdo 6 2 0 || skip
which mkfs.ext4 || skip
aux prepare_vg 4 6400
# convert to thin-pool with VDO backend from existing VG/LV
lvcreate -L5G --name $lv1 $vg
lvconvert --yes --type thin-pool -c 256K --pooldatavdo y $vg/$lv1
mkfs.ext4 "$DM_DEV_DIR/$vg/$lv1"
# Conversion catched present filesystem and should fail
fail lvconvert -Wy --type thin-pool -c 256K --deduplication n --pooldatavdo y $vg/$lv1
# With --yes it should work over prompt
lvconvert --yes -Wy --type thin-pool -c 256K --deduplication n --pooldatavdo y $vg/$lv1
check lv_field $vg/$lv1 segtype thin-pool
check lv_field $vg/${lv1}_tdata segtype vdo -a
check lv_field $vg/${lv1}_tdata vdo_deduplication "" -a # deduplication should be disabled
lvremove -f $vg
# convert to thin-pool with VDO backend from existing VDO VG/LV
lvcreate -L5G --vdo --name $lv1 $vg
lvconvert --yes --type thin-pool --pooldatavdo y $vg/$lv1
lvcreate -L5G --vdo --compression y --name $lv1 $vg
lvconvert --yes -Wy --type thin-pool --pooldatavdo y --compression n --vdosettings 'ack_threads=4' $vg/$lv1
check lv_field $vg/$lv1 segtype thin-pool
check lv_field $vg/${lv1}_tdata segtype vdo -a
check lv_field $vg/${lv1}_tdata vdo_compression "" -a # compression should be disabled
lvremove -f $vg

View File

@ -20,15 +20,23 @@ export LVM_TEST_THIN_REPAIR_CMD=${LVM_TEST_THIN_REPAIR_CMD-/bin/false}
aux have_thin 1 0 0 || skip
aux have_vdo 6 2 0 || skip
which mkfs.ext4 || skip
#
# Main
#
aux prepare_vg 2 6400
# Prepare some 'existing' fs signature, should be at location
# used by later lvcreate --type thin-pool
lvcreate -L5m -n $lv1 $vg
lvcreate -L5G -n $lv2 $vg
mkfs.ext4 "$DM_DEV_DIR/$vg/$lv2"
lvremove -f $vg
# TODO: lvm2 should like allow control over wipesginate when creating thin-pool
# convert to thin-pool with VDO backend from existing VDO VG/LV
lvcreate --type thin-pool -L5G --pooldatavdo y --name $lv1 $vg
check lv_field $vg/$lv1 segtype thin-pool
check lv_field $vg/${lv1}_tdata segtype vdo -a