1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-22 17:35:59 +03:00

tests: add new integrity reporting fields

This commit is contained in:
David Teigland 2020-09-01 17:07:36 -05:00
parent ed249a2c53
commit 739827ef1c
3 changed files with 36 additions and 0 deletions

View File

@ -81,6 +81,7 @@ not lvcreate --type raid1 -m1 --raidintegrity y --raidintegrityblocksize 512 -l
# lvcreate --bs 4096 on dev512, result 4k # lvcreate --bs 4096 on dev512, result 4k
lvcreate --type raid1 -m1 --raidintegrity y --raidintegrityblocksize 4096 -l 8 -n $lv1 $vg1 lvcreate --type raid1 -m1 --raidintegrity y --raidintegrityblocksize 4096 -l 8 -n $lv1 $vg1
lvs -o raidintegrityblocksize $vg1/$lv1 | grep 4096
pvck --dump metadata $LOOP1 | grep 'block_size = 4096' pvck --dump metadata $LOOP1 | grep 'block_size = 4096'
lvremove -y $vg1/$lv1 lvremove -y $vg1/$lv1
@ -184,6 +185,7 @@ aux wipefs_a /dev/$vg1/$lv1
mkfs.xfs -f -s size=4096 "$DM_DEV_DIR/$vg1/$lv1" mkfs.xfs -f -s size=4096 "$DM_DEV_DIR/$vg1/$lv1"
blkid "$DM_DEV_DIR/$vg1/$lv1" | grep BLOCK_SIZE=\"4096\" blkid "$DM_DEV_DIR/$vg1/$lv1" | grep BLOCK_SIZE=\"4096\"
lvconvert --raidintegrity y --raidintegrityblocksize 512 $vg1/$lv1 lvconvert --raidintegrity y --raidintegrityblocksize 512 $vg1/$lv1
lvs -o raidintegrityblocksize $vg1/$lv1 | grep 512
blkid "$DM_DEV_DIR/$vg1/$lv1" | grep BLOCK_SIZE=\"4096\" blkid "$DM_DEV_DIR/$vg1/$lv1" | grep BLOCK_SIZE=\"4096\"
mount "$DM_DEV_DIR/$vg1/$lv1" $mnt mount "$DM_DEV_DIR/$vg1/$lv1" $mnt
umount $mnt umount $mnt
@ -198,6 +200,7 @@ blkid "$DM_DEV_DIR/$vg1/$lv1" | grep BLOCK_SIZE=\"4096\"
lvchange -an $vg1/$lv1 lvchange -an $vg1/$lv1
# lv needs to be inactive to increase LBS from 512 # lv needs to be inactive to increase LBS from 512
lvconvert --raidintegrity y --raidintegrityblocksize 1024 $vg1/$lv1 lvconvert --raidintegrity y --raidintegrityblocksize 1024 $vg1/$lv1
lvs -o raidintegrityblocksize $vg1/$lv1 | grep 1024
lvchange -ay $vg1/$lv1 lvchange -ay $vg1/$lv1
blkid "$DM_DEV_DIR/$vg1/$lv1" | grep BLOCK_SIZE=\"4096\" blkid "$DM_DEV_DIR/$vg1/$lv1" | grep BLOCK_SIZE=\"4096\"
mount "$DM_DEV_DIR/$vg1/$lv1" $mnt mount "$DM_DEV_DIR/$vg1/$lv1" $mnt

View File

@ -145,6 +145,7 @@ lvcreate --type raid1 -m1 --raidintegrity y -n $lv1 -l 8 $vg "$dev1" "$dev2"
_wait_sync $vg/${lv1}_rimage_0 _wait_sync $vg/${lv1}_rimage_0
_wait_sync $vg/${lv1}_rimage_1 _wait_sync $vg/${lv1}_rimage_1
_wait_sync $vg/$lv1 _wait_sync $vg/$lv1
lvs -o raidintegritymode $vg/$lv1 | grep journal
_add_new_data_to_mnt _add_new_data_to_mnt
lvconvert --replace "$dev1" $vg/$lv1 "$dev3" lvconvert --replace "$dev1" $vg/$lv1 "$dev3"
lvs -a -o+devices $vg > out lvs -a -o+devices $vg > out
@ -167,6 +168,7 @@ lvcreate --type raid1 -m1 --raidintegrity y --raidintegritymode bitmap -n $lv1 -
_wait_sync $vg/${lv1}_rimage_0 _wait_sync $vg/${lv1}_rimage_0
_wait_sync $vg/${lv1}_rimage_1 _wait_sync $vg/${lv1}_rimage_1
_wait_sync $vg/$lv1 _wait_sync $vg/$lv1
lvs -o raidintegritymode $vg/$lv1 | grep bitmap
_add_new_data_to_mnt _add_new_data_to_mnt
lvconvert --replace "$dev1" $vg/$lv1 "$dev3" lvconvert --replace "$dev1" $vg/$lv1 "$dev3"
lvs -a -o+devices $vg > out lvs -a -o+devices $vg > out

View File

@ -104,6 +104,10 @@ _test_fs_with_raid() {
umount $mnt umount $mnt
lvchange -an $vg/$lv1 lvchange -an $vg/$lv1
# FIXME: this is only finding/corrupting the bit with raid1
# other raid levels may require looking at a different dev.
# (Attempt this xxd/tac/sed/xxd on each dev in the LV?)
xxd "$dev1" > dev1.txt xxd "$dev1" > dev1.txt
tac dev1.txt > dev1.rev tac dev1.txt > dev1.rev
sed -e '0,/4242 4242 4242 4242 4242 4242 4242 4242/ s/4242 4242 4242 4242 4242 4242 4242 4242/4242 4242 4242 4242 4242 4242 4242 4243/' dev1.rev > dev1.rev.bad sed -e '0,/4242 4242 4242 4242 4242 4242 4242 4242/ s/4242 4242 4242 4242 4242 4242 4242 4242/4242 4242 4242 4242 4242 4242 4242 4243/' dev1.rev > dev1.rev.bad
@ -224,6 +228,8 @@ lvcreate --type raid1 -m1 --raidintegrity y -n $lv1 -l 8 $vg
_wait_recalc $vg/${lv1}_rimage_0 _wait_recalc $vg/${lv1}_rimage_0
_wait_recalc $vg/${lv1}_rimage_1 _wait_recalc $vg/${lv1}_rimage_1
_test_fs_with_raid _test_fs_with_raid
lvs -o integritymismatches $vg/${lv1}_rimage_0
lvs -o integritymismatches $vg/${lv1}_rimage_1
lvchange -an $vg/$lv1 lvchange -an $vg/$lv1
lvconvert --raidintegrity n $vg/$lv1 lvconvert --raidintegrity n $vg/$lv1
lvremove $vg/$lv1 lvremove $vg/$lv1
@ -235,6 +241,9 @@ _wait_recalc $vg/${lv1}_rimage_0
_wait_recalc $vg/${lv1}_rimage_1 _wait_recalc $vg/${lv1}_rimage_1
_wait_recalc $vg/${lv1}_rimage_2 _wait_recalc $vg/${lv1}_rimage_2
_test_fs_with_raid _test_fs_with_raid
lvs -o integritymismatches $vg/${lv1}_rimage_0
lvs -o integritymismatches $vg/${lv1}_rimage_1
lvs -o integritymismatches $vg/${lv1}_rimage_2
lvchange -an $vg/$lv1 lvchange -an $vg/$lv1
lvconvert --raidintegrity n $vg/$lv1 lvconvert --raidintegrity n $vg/$lv1
lvremove $vg/$lv1 lvremove $vg/$lv1
@ -246,6 +255,9 @@ _wait_recalc $vg/${lv1}_rimage_0
_wait_recalc $vg/${lv1}_rimage_1 _wait_recalc $vg/${lv1}_rimage_1
_wait_recalc $vg/${lv1}_rimage_2 _wait_recalc $vg/${lv1}_rimage_2
_test_fs_with_raid _test_fs_with_raid
lvs -o integritymismatches $vg/${lv1}_rimage_0
lvs -o integritymismatches $vg/${lv1}_rimage_1
lvs -o integritymismatches $vg/${lv1}_rimage_2
lvchange -an $vg/$lv1 lvchange -an $vg/$lv1
lvconvert --raidintegrity n $vg/$lv1 lvconvert --raidintegrity n $vg/$lv1
lvremove $vg/$lv1 lvremove $vg/$lv1
@ -257,6 +269,9 @@ _wait_recalc $vg/${lv1}_rimage_0
_wait_recalc $vg/${lv1}_rimage_1 _wait_recalc $vg/${lv1}_rimage_1
_wait_recalc $vg/${lv1}_rimage_2 _wait_recalc $vg/${lv1}_rimage_2
_test_fs_with_raid _test_fs_with_raid
lvs -o integritymismatches $vg/${lv1}_rimage_0
lvs -o integritymismatches $vg/${lv1}_rimage_1
lvs -o integritymismatches $vg/${lv1}_rimage_2
lvchange -an $vg/$lv1 lvchange -an $vg/$lv1
lvconvert --raidintegrity n $vg/$lv1 lvconvert --raidintegrity n $vg/$lv1
lvremove $vg/$lv1 lvremove $vg/$lv1
@ -270,6 +285,11 @@ _wait_recalc $vg/${lv1}_rimage_2
_wait_recalc $vg/${lv1}_rimage_3 _wait_recalc $vg/${lv1}_rimage_3
_wait_recalc $vg/${lv1}_rimage_4 _wait_recalc $vg/${lv1}_rimage_4
_test_fs_with_raid _test_fs_with_raid
lvs -o integritymismatches $vg/${lv1}_rimage_0
lvs -o integritymismatches $vg/${lv1}_rimage_1
lvs -o integritymismatches $vg/${lv1}_rimage_2
lvs -o integritymismatches $vg/${lv1}_rimage_3
lvs -o integritymismatches $vg/${lv1}_rimage_4
lvchange -an $vg/$lv1 lvchange -an $vg/$lv1
lvconvert --raidintegrity n $vg/$lv1 lvconvert --raidintegrity n $vg/$lv1
lvremove $vg/$lv1 lvremove $vg/$lv1
@ -282,6 +302,10 @@ _wait_recalc $vg/${lv1}_rimage_1
_wait_recalc $vg/${lv1}_rimage_2 _wait_recalc $vg/${lv1}_rimage_2
_wait_recalc $vg/${lv1}_rimage_3 _wait_recalc $vg/${lv1}_rimage_3
_test_fs_with_raid _test_fs_with_raid
lvs -o integritymismatches $vg/${lv1}_rimage_0
lvs -o integritymismatches $vg/${lv1}_rimage_1
lvs -o integritymismatches $vg/${lv1}_rimage_2
lvs -o integritymismatches $vg/${lv1}_rimage_3
lvchange -an $vg/$lv1 lvchange -an $vg/$lv1
lvconvert --raidintegrity n $vg/$lv1 lvconvert --raidintegrity n $vg/$lv1
lvremove $vg/$lv1 lvremove $vg/$lv1
@ -607,6 +631,8 @@ vgremove -ff $vg
_prepare_vg _prepare_vg
lvcreate --type raid1 -m1 --raidintegrity y --raidintegritymode bitmap -n $lv1 -l 8 $vg lvcreate --type raid1 -m1 --raidintegrity y --raidintegritymode bitmap -n $lv1 -l 8 $vg
_test_fs_with_raid _test_fs_with_raid
lvs -o integritymismatches $vg/${lv1}_rimage_0
lvs -o integritymismatches $vg/${lv1}_rimage_1
lvchange -an $vg/$lv1 lvchange -an $vg/$lv1
lvconvert --raidintegrity n $vg/$lv1 lvconvert --raidintegrity n $vg/$lv1
lvremove $vg/$lv1 lvremove $vg/$lv1
@ -615,6 +641,11 @@ vgremove -ff $vg
_prepare_vg _prepare_vg
lvcreate --type raid6 --raidintegrity y --raidintegritymode bitmap -n $lv1 -l 8 $vg lvcreate --type raid6 --raidintegrity y --raidintegritymode bitmap -n $lv1 -l 8 $vg
_test_fs_with_raid _test_fs_with_raid
lvs -o integritymismatches $vg/${lv1}_rimage_0
lvs -o integritymismatches $vg/${lv1}_rimage_1
lvs -o integritymismatches $vg/${lv1}_rimage_2
lvs -o integritymismatches $vg/${lv1}_rimage_3
lvs -o integritymismatches $vg/${lv1}_rimage_4
lvchange -an $vg/$lv1 lvchange -an $vg/$lv1
lvconvert --raidintegrity n $vg/$lv1 lvconvert --raidintegrity n $vg/$lv1
lvremove $vg/$lv1 lvremove $vg/$lv1