Improve revert tests

1/ perform revert-grow on more metadata versions
2/ add revert-inplace.

Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
NeilBrown 2013-07-24 10:40:26 +10:00
parent 2bf62891c1
commit 7d7092ec6c
2 changed files with 56 additions and 3 deletions

View File

@ -3,8 +3,13 @@ set -e -x
# revert a reshape that is increasing the number of devices,
# raid5, raid6, and raid10
# metadate 0.90 cannot handle RAID10 growth
# metadata 1.0 doesn't get a default headspace, is don't try it either.
for metadata in 0.90 1.1 1.2
do
# RAID5
mdadm -CR --assume-clean $md0 -l5 -n4 -x1 $devlist4
mdadm -CR --assume-clean $md0 -l5 -n4 -x1 $devlist4 --metadata=$metadata
check raid5
testdev $md0 3 $mdsize1 512
mdadm -G $md0 -n 5
@ -17,7 +22,7 @@ testdev $md0 3 $mdsize1 512
mdadm -S $md0
# RAID6
mdadm -CR --assume-clean $md0 -l6 -n4 -x1 $devlist4
mdadm -CR --assume-clean $md0 -l6 -n4 -x1 $devlist4 --metadata=$metadata
check raid6
testdev $md0 2 $mdsize1 512
mdadm -G $md0 -n 5
@ -29,8 +34,10 @@ check raid6
testdev $md0 2 $mdsize1 512
mdadm -S $md0
if [ $metadata = 0.90 ]; then continue; fi
# RAID10
mdadm -CR --assume-clean $md0 -l10 -n4 -x1 $devlist4
mdadm -CR --assume-clean $md0 -l10 -n4 -x1 $devlist4 --metadata=$metadata
check raid10
testdev $md0 2 $mdsize1 512
mdadm -G $md0 -n 5
@ -41,3 +48,5 @@ check wait
check raid10
testdev $md0 2 $mdsize1 512
mdadm -S $md0
done

44
tests/07revert-inplace Normal file
View File

@ -0,0 +1,44 @@
set -e -x
# revert a reshape that is not changing the number of data devices,
# raid5, raid6, and raid10
# RAID5 -> RAID6
mdadm -CR --assume-clean $md0 -l5 -n4 -x1 $devlist4
check raid5
testdev $md0 3 $mdsize1 512
mdadm -G $md0 -l 6
sleep 3
mdadm -S $md0
mdadm -A $md0 --update=revert-reshape $devlist4 --backup-file=/tmp/md-backup
check wait
check raid6
check algorithm 18
testdev $md0 3 $mdsize1 512
mdadm -S $md0
# RAID6 -> RAID5
mdadm -CR --assume-clean $md0 -l6 -n5 $devlist4
check raid6
testdev $md0 3 $mdsize1 512
mdadm -G $md0 -l 5
sleep 3
mdadm -S $md0
mdadm -A $md0 --update=revert-reshape $devlist4 --backup-file=/tmp/md-backup
check wait
check raid6
testdev $md0 3 $mdsize1 512
mdadm -S $md0
# RAID10 - decrease chunk size
mdadm -CR --assume-clean $md0 -l10 -n6 -c 64 $devlist5
check raid10
testdev $md0 3 $mdsize1 64
mdadm -G $md0 -c 32
sleep 3
mdadm -S $md0
strace -o /tmp/str ./mdadm -A $md0 --update=revert-reshape $devlist5
check wait
check raid10
testdev $md0 3 $mdsize1 64
mdadm -S $md0