diff options
author | NeilBrown <neilb@suse.de> | 2013-07-24 10:40:26 +1000 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2013-07-24 12:23:04 +1000 |
commit | 7d7092ec6c62e26c67954213be9da6fc8ad301e7 (patch) | |
tree | 4e8632766f0707705f40f87e537d72f4d35efcb4 /tests | |
parent | 2bf62891c10903df323da49d601a88adebec7ee2 (diff) | |
download | mdadm-7d7092ec6c62e26c67954213be9da6fc8ad301e7.tar.gz |
Improve revert tests
1/ perform revert-grow on more metadata versions
2/ add revert-inplace.
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/07revert-grow | 15 | ||||
-rw-r--r-- | tests/07revert-inplace | 44 |
2 files changed, 56 insertions, 3 deletions
diff --git a/tests/07revert-grow b/tests/07revert-grow index 2dee738..c8c4e85 100644 --- a/tests/07revert-grow +++ b/tests/07revert-grow @@ -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 diff --git a/tests/07revert-inplace b/tests/07revert-inplace new file mode 100644 index 0000000..48416c8 --- /dev/null +++ b/tests/07revert-inplace @@ -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 |