]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
tests: add a test for reverting reshapes
authorNeilBrown <neilb@suse.de>
Tue, 2 Jul 2013 06:19:52 +0000 (16:19 +1000)
committerNeilBrown <neilb@suse.de>
Thu, 4 Jul 2013 07:10:36 +0000 (17:10 +1000)
Only reverting reshapes that grow the array so far.

Signed-off-by: NeilBrown <neilb@suse.de>
test
tests/07revert-grow [new file with mode: 0644]

diff --git a/test b/test
index d9ba25cc78fcb8f3eb6ed010bc9ab3a38be12fe0..8a6418d66bb63121f50e03bd2b0dd355889799b1 100755 (executable)
--- a/test
+++ b/test
@@ -95,6 +95,7 @@ do_setup() {
     eval dev$d=/dev/loop$d
     eval file$d=$targetdir/mdtest$d
     eval devlist=\"\$devlist \$dev$d\"
+    eval devlist$d=\"\$devlist\"
    #" <-- add this quote to un-confuse vim syntax highlighting
   done
   path0=$dev6
diff --git a/tests/07revert-grow b/tests/07revert-grow
new file mode 100644 (file)
index 0000000..2dee738
--- /dev/null
@@ -0,0 +1,43 @@
+set -e -x
+
+# revert a reshape that is increasing the number of devices,
+# raid5, raid6, and raid10
+
+# RAID5
+mdadm -CR --assume-clean $md0 -l5 -n4 -x1 $devlist4
+check raid5
+testdev $md0 3 $mdsize1 512
+mdadm -G $md0 -n 5
+sleep 3
+mdadm -S $md0
+mdadm -A $md0 --update=revert-reshape $devlist4 --backup-file=/tmp/md-backup
+check wait
+check raid5
+testdev $md0 3 $mdsize1 512
+mdadm -S $md0
+
+# RAID6
+mdadm -CR --assume-clean $md0 -l6 -n4 -x1 $devlist4
+check raid6
+testdev $md0 2 $mdsize1 512
+mdadm -G $md0 -n 5
+sleep 3
+mdadm -S $md0
+mdadm -A $md0 --update=revert-reshape $devlist4 --backup-file=/tmp/md-backup
+check wait
+check raid6
+testdev $md0 2 $mdsize1 512
+mdadm -S $md0
+
+# RAID10
+mdadm -CR --assume-clean $md0 -l10 -n4 -x1 $devlist4
+check raid10
+testdev $md0 2 $mdsize1 512
+mdadm -G $md0 -n 5
+sleep 3
+mdadm -S $md0
+strace -o /tmp/str ./mdadm -A $md0 --update=revert-reshape $devlist4
+check wait
+check raid10
+testdev $md0 2 $mdsize1 512
+mdadm -S $md0