From d2c6866bdbe6c4ca04c1282c883a3bb0d3541403 Mon Sep 17 00:00:00 2001 From: Zdenek Kabelac <zkabelac@redhat.com> Date: Fri, 10 May 2024 00:24:23 +0200 Subject: [PATCH] tests: vdo conversion updates --- test/shell/lvconvert-thin-vdo.sh | 15 +++++++++++---- test/shell/lvcreate-thin-vdo.sh | 10 +++++++++- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/test/shell/lvconvert-thin-vdo.sh b/test/shell/lvconvert-thin-vdo.sh index 0cb0b1eaf..8e186e223 100644 --- a/test/shell/lvconvert-thin-vdo.sh +++ b/test/shell/lvconvert-thin-vdo.sh @@ -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 diff --git a/test/shell/lvcreate-thin-vdo.sh b/test/shell/lvcreate-thin-vdo.sh index e73d9d99f..92d9a2851 100644 --- a/test/shell/lvcreate-thin-vdo.sh +++ b/test/shell/lvcreate-thin-vdo.sh @@ -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 -- 2.43.5