]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
test: remove all the environment handling.
authorNeilBrown <neilb@suse.de>
Tue, 1 Feb 2011 03:43:59 +0000 (14:43 +1100)
committerNeilBrown <neilb@suse.de>
Tue, 1 Feb 2011 03:43:59 +0000 (14:43 +1100)
Instead, just include the environ explicitly in the test file
or, where shared, source the shared file.

Signed-off-by: NeilBrown <neilb@suse.de>
84 files changed:
test
tests/08imsm-overlap
tests/09imsm-assemble
tests/09imsm-create-fail-rebuild
tests/11spare-migration
tests/12imsm-r0_2d-grow-r0_3d
tests/12imsm-r0_2d-grow-r0_4d
tests/12imsm-r0_2d-grow-r0_5d
tests/12imsm-r0_3d-grow-r0_4d
tests/12imsm-r5_3d-grow-r5_4d
tests/12imsm-r5_3d-grow-r5_5d
tests/13imsm-r0_r0_2d-grow-r0_r0_4d
tests/13imsm-r0_r0_2d-grow-r0_r0_5d
tests/13imsm-r0_r0_3d-grow-r0_r0_4d
tests/13imsm-r0_r5_3d-grow-r0_r5_4d
tests/13imsm-r0_r5_3d-grow-r0_r5_5d
tests/13imsm-r5_r0_3d-grow-r5_r0_4d
tests/13imsm-r5_r0_3d-grow-r5_r0_5d
tests/14imsm-r0_3d-r5_3d-migrate-r5_4d-r5_4d
tests/14imsm-r0_3d_no_spares-migrate-r5_3d
tests/14imsm-r0_r0_2d-takeover-r10_4d
tests/14imsm-r10_4d-grow-r10_5d
tests/14imsm-r10_r5_4d-takeover-r0_2d
tests/14imsm-r1_2d-grow-r1_3d
tests/14imsm-r1_2d-takeover-r0_2d
tests/14imsm-r5_3d-grow-r5_5d-no-spares
tests/14imsm-r5_3d-migrate-r4_3d
tests/15imsm-r0_3d_64k-migrate-r0_3d_256k
tests/15imsm-r5_3d_4k-migrate-r5_3d_256k
tests/15imsm-r5_3d_64k-migrate-r5_3d_256k
tests/15imsm-r5_6d_4k-migrate-r5_6d_256k
tests/15imsm-r5_r0_3d_64k-migrate-r5_r0_3d_256k
tests/16imsm-r0_3d-migrate-r5_4d
tests/16imsm-r0_5d-migrate-r5_6d
tests/16imsm-r5_3d-migrate-r0_3d
tests/16imsm-r5_5d-migrate-r0_5d
tests/18imsm-1d-takeover-r0_1d
tests/18imsm-1d-takeover-r1_2d
tests/18imsm-r0_2d-takeover-r10_4d
tests/18imsm-r10_4d-takeover-r0_2d
tests/env-08imsm-overlap [deleted file]
tests/env-09imsm-assemble [deleted file]
tests/env-09imsm-create-fail-rebuild [deleted file]
tests/env-11spare-migration [deleted file]
tests/env-12imsm-r0_2d-grow-r0_3d [deleted symlink]
tests/env-12imsm-r0_2d-grow-r0_4d [deleted symlink]
tests/env-12imsm-r0_2d-grow-r0_5d [deleted symlink]
tests/env-12imsm-r0_3d-grow-r0_4d [deleted symlink]
tests/env-12imsm-r5_3d-grow-r5_4d [deleted symlink]
tests/env-12imsm-r5_3d-grow-r5_5d [deleted symlink]
tests/env-13imsm-r0_r0_2d-grow-r0_r0_4d [deleted symlink]
tests/env-13imsm-r0_r0_2d-grow-r0_r0_5d [deleted symlink]
tests/env-13imsm-r0_r0_3d-grow-r0_r0_4d [deleted symlink]
tests/env-13imsm-r0_r5_3d-grow-r0_r5_4d [deleted symlink]
tests/env-13imsm-r0_r5_3d-grow-r0_r5_5d [deleted symlink]
tests/env-13imsm-r5_r0_3d-grow-r5_r0_4d [deleted symlink]
tests/env-13imsm-r5_r0_3d-grow-r5_r0_5d [deleted symlink]
tests/env-14imsm-r0_3d-r5_3d-migrate-r5_4d-r5_4d [deleted symlink]
tests/env-14imsm-r0_3d_no_spares-migrate-r5_3d [deleted symlink]
tests/env-14imsm-r0_r0_2d-takeover-r10_4d [deleted symlink]
tests/env-14imsm-r10_4d-grow-r10_5d [deleted symlink]
tests/env-14imsm-r10_r5_4d-takeover-r0_2d [deleted symlink]
tests/env-14imsm-r1_2d-grow-r1_3d [deleted symlink]
tests/env-14imsm-r1_2d-takeover-r0_2d [deleted symlink]
tests/env-14imsm-r5_3d-grow-r5_4d-no-spares [deleted symlink]
tests/env-14imsm-r5_3d-grow-r5_5d-no-spares [deleted symlink]
tests/env-14imsm-r5_3d-migrate-r4_3d [deleted symlink]
tests/env-15imsm-r0_3d_64k-migrate-r0_3d_256k [deleted symlink]
tests/env-15imsm-r5_3d_4k-migrate-r5_3d_256k [deleted symlink]
tests/env-15imsm-r5_3d_64k-migrate-r5_3d_256k [deleted symlink]
tests/env-15imsm-r5_6d_4k-migrate-r5_6d_256k [deleted symlink]
tests/env-15imsm-r5_r0_3d_64k-migrate-r5_r0_3d_128k [deleted symlink]
tests/env-15imsm-r5_r0_3d_64k-migrate-r5_r0_3d_256k [deleted symlink]
tests/env-16imsm-r0_3d-migrate-r5_4d [deleted symlink]
tests/env-16imsm-r0_5d-migrate-r5_6d [deleted symlink]
tests/env-16imsm-r5_3d-migrate-r0_3d [deleted symlink]
tests/env-16imsm-r5_5d-migrate-r0_5d [deleted symlink]
tests/env-17imsm-r5_3d-migrate-r4_3d [deleted symlink]
tests/env-18imsm-1d-takeover-r0_1d [deleted symlink]
tests/env-18imsm-1d-takeover-r1_2d [deleted symlink]
tests/env-18imsm-r0_2d-takeover-r10_4d [deleted symlink]
tests/env-18imsm-r10_4d-takeover-r0_2d [deleted symlink]
tests/env-18imsm-r1_2d-takeover-r0_2d [deleted symlink]
tests/env-imsm-template

diff --git a/test b/test
index 277f94a8b2eb621821c97e0a244569d5beab8880..cbca4d1eefadf642b75ac6d83ab7e546b5d194d8 100755 (executable)
--- a/test
+++ b/test
@@ -197,21 +197,6 @@ rotest() {
   fsck -fn $dev >&2
 }
 
-setup_environment() {
-   if [ -f $1 ]; then
-      . $environment
-      setup_env
-   fi
-}
-
-reset_environment() {
-   if [ -f $1 ]; then
-      reset_env
-      unset setup_env
-      unset reset_env
-   fi
-}
-
 for script in tests/$prefix tests/$prefix*[^~]
 do
   if [ -f "$script" ]
@@ -221,18 +206,14 @@ do
    $mdadm -Ssq 2> /dev/null
    mdadm --zero $devlist 2> /dev/null
    mdadm --zero $devlist 2> /dev/null
-   environment="tests/env-`basename $script`"
-   setup_environment $environment
    # source script in a subshell, so it has access to our
    # namespace, but cannot change it.
    echo -ne "$script... "
    if ( set -ex ; . $script )  2> $targetdir/log
    then echo "succeeded"
    else echo "FAILED"
-       reset_environment $environment
        exit 1
    fi
-   reset_environment $environment
   fi
 done
 exit 0
index 1a071efa8d41cefb5e64071bc5a78b65dd13fd15..30abd64ea0a45621c33c734ef93380779bd43893 100644 (file)
@@ -1,3 +1,59 @@
+imsm_check() {
+   case $1 in
+    container )
+      grep -s "$(((418 * $2)/2)) blocks super external:imsm" /proc/mdstat > /dev/null || {
+               echo >&2 "ERROR correctly formed container not found"; cat /proc/mdstat; exit 1;}
+      ;;
+    member )
+      member=$2
+      num_disks=$3
+      level=$4
+      size=$5
+      offset=$6
+      err=0
+
+      eval `stat -L -c "let major=0x%t; let minor=0x%T;" $member`
+      sysfs=/sys/dev/block/${major}:${minor}
+      if [ ! -f ${sysfs}/md/array_state ]; then
+           echo "member array $member not found" >&2
+           cat /proc/mdstat >&2
+           exit 1
+      fi
+      for i in `seq 0 $((num_disks-1))`
+      do
+         _offset=`cat ${sysfs}/md/rd${i}/offset`
+         if [ $offset -ne $((_offset/2)) ]; then
+           echo "offset mismatch expected $offset got $_offset" >&2
+            err=$((err+1))
+         fi
+         _size=`cat ${sysfs}/md/rd${i}/size`
+         if [ $size -ne $_size ]; then
+           echo "offset mismatch expected $size got $_size" >&2
+            err=$((err+1))
+         fi
+      done
+
+      if [ $err -gt 0 ]; then
+          echo "$member failed check" >&2
+          cat /proc/mdstat >&2
+         mdadm -E /dev/loop0 >&2
+          exit 1
+      fi
+      ;;
+    * ) echo >&2 ERROR unknown check $1 ; exit 1;
+   esac
+}
+
+export IMSM_DEVNAME_AS_SERIAL=1
+export IMSM_NO_PLATFORM=1
+container=/dev/md/container
+member0=/dev/md/vol0
+member1=/dev/md/vol1
+member2=/dev/md/vol2
+member3=/dev/md/vol3
+member4=/dev/md/vol4
+
+
 # create raid arrays with varying degress of overlap
 mdadm -CR $container -e imsm -n 6 $dev0 $dev1 $dev2 $dev3 $dev4 $dev5
 imsm_check container 6
index 46e15bcf648310884d7b997dc95dbe3f898d1d3e..2b62e02d3fde27e50f3e8376e1657bfb6a443470 100644 (file)
@@ -1,5 +1,31 @@
 # validate the prodigal member disk scenario i.e. a former container
 # member is returned after having been rebuilt on another system
+
+
+imsm_check_hold() {
+   if mdadm --remove $1 $2; then
+       echo "$2 removal from $1 should have been blocked" >&2
+       cat /proc/mdstat >&2
+       mdadm -E $2
+       exit 1
+   fi
+}
+
+imsm_check_removal() {
+   if ! mdadm --remove $1 $2 ; then
+       echo "$2 removal from $1 should have succeeded" >&2
+       cat /proc/mdstat >&2
+       mdadm -E $2
+       exit 1
+   fi
+}
+
+export IMSM_DEVNAME_AS_SERIAL=1
+export IMSM_TEST_OROM=1
+container=/dev/md/container
+member=/dev/md/vol0
+
+
 num_disks=4
 size=$((10*1024))
 mdadm -CR $container -e imsm -n $num_disks $dev0 $dev1 $dev2 $dev3
index 68fdd09680729b26e44d9e231ff7fe39eb27e9e6..d96496e6c217be96d85dd22e7e701a4d3d9d92b7 100644 (file)
@@ -1,5 +1,90 @@
 # sanity check array creation
 
+imsm_check_hold() {
+   if mdadm --remove $1 $2; then
+       echo "$2 removal from $1 should have been blocked" >&2
+       cat /proc/mdstat >&2
+       mdadm -E $2
+       exit 1
+   fi
+}
+
+imsm_check_removal() {
+   if ! mdadm --remove $1 $2 ; then
+       echo "$2 removal from $1 should have succeeded" >&2
+       cat /proc/mdstat >&2
+       mdadm -E $2
+       exit 1
+   fi
+}
+
+imsm_check() {
+   udevadm settle
+   case $1 in
+    container )
+      grep -s "$(((418 * $2)/2)) blocks super external:imsm" /proc/mdstat > /dev/null || {
+               echo >&2 "ERROR correctly formed container not found"; cat /proc/mdstat; exit 1;}
+      ;;
+    member )
+      member=$2
+      num_disks=$3
+      level=$4
+      size=$5
+      offset=$6
+      chunk=$7
+      err=0
+
+      if [ $level -ne 1 ]; then
+         size=$((size & ~(chunk - 1)))
+      else
+         chunk=64
+      fi
+      eval `stat -L -c "let major=0x%t; let minor=0x%T;" $member`
+      sysfs=/sys/dev/block/${major}:${minor}
+      if [ ! -f ${sysfs}/md/array_state ]; then
+           echo "member array $member not found" >&2
+           cat /proc/mdstat >&2
+           exit 1
+      fi
+      _chunk=`cat ${sysfs}/md/chunk_size`
+      if [ $chunk -ne $((_chunk/1024)) ]; then
+         echo "chunk mismatch expected $chunk got $_chunk" >&2
+         err=$((err+1))
+      fi
+      for i in `seq 0 $((num_disks-1))`
+      do
+         _offset=`cat ${sysfs}/md/rd${i}/offset`
+         if [ $offset -ne $((_offset/2)) ]; then
+           echo "offset mismatch expected $offset got $_offset" >&2
+            err=$((err+1))
+         fi
+         _size=`cat ${sysfs}/md/rd${i}/size`
+         if [ $size -ne $_size ]; then
+           echo "size mismatch expected $size got $_size" >&2
+            err=$((err+1))
+         fi
+      done
+
+      if [ $err -gt 0 ]; then
+          echo "$member failed check" >&2
+          cat /proc/mdstat >&2
+         mdadm -E /dev/loop0 >&2
+          exit 1
+      fi
+      ;;
+    * ) echo >&2 ERROR unknown check $1 ; exit 1;
+   esac
+}
+
+export IMSM_DEVNAME_AS_SERIAL=1
+export IMSM_TEST_OROM=1
+container=/dev/md/container
+member0=/dev/md/vol0
+member1=/dev/md/vol1
+member2=/dev/md/vol2
+member3=/dev/md/vol3
+member4=/dev/md/vol4
+
 # IMSM rounds to multiples of one mebibyte - 1024K
 DEV_ROUND_K=1024
 
index 01693e4b75e157e575e29f20192c5772562f373c..c8ef3625c88fd32dfd25bfe5d5737018661054fe 100644 (file)
@@ -3,6 +3,10 @@
 # above number 7 bigger again by any amount (this is not changed for now as it
 # could affect other tests)
 
+export IMSM_DEVNAME_AS_SERIAL=1
+export IMSM_TEST_OROM=1
+export IMSM_NO_PLATFORM=1
+
 . tests/utils
 set -ex
 verbose="yes"
index 7f3d38fa2703b3cd360eb6dcd40997759832e60b..3c6cf743c8f5a021276de74b0c4a24224269f22a 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 0 volume, 2 disks grow to RAID 0 volume, 3 disks
 # POSITIVE test
 
index de76920a08f597c6e3e6fed6dca4a4b2bcc526ff..e4fccda5f3e08084d1df317a6374e8180531d825 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 0 volume, 2 disks grow to RAID 0 volume, 4 disks
 # POSITIVE test
 
index ffa4cc1e11dc9b7515f52941432a5d0f694529ed..388a5bbd35f7fb1e3dd1e0d91bcc396b39e54f2c 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 0 volume, 2 disks grow to RAID 0 volume, 5 disks
 # POSITIVE test
 
index d1fa584c9e16ecc533176075002190d9d1c3db79..7065f07becc9df4cb6e4fdb9937efd8617f3f28e 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 0 volume, 3 disks grow to RAID 0 volume, 4 disks
 # POSITIVE test
 
index a87ef8c649e6cbe33b18543631e843832c17702a..097da0a755713b599b52024f656d0cb5de16a321 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 5 volume, 3 disks grow to RAID 5 volume, 4 disks
 # POSITIVE test
 
index 2fa3711e7f71baeba1748ce0dce5622a42c354f1..2e5c7d25caae1de587a7d4e842e6e0e18f935c85 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 5 volume, 3 disks grow to RAID 5 volume, 5 disks
 # POSITIVE test
 
index 9b6256b99be70a8e1f2f08ee894512d399001b8b..f85efa5d499259a17cae48829340279661d6b94f 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # Grow the container (arrays inside) from 2 disks to 4 disks
 # POSITIVE test
 
index 05364f56caf37ad415a60266bf8bf8f8935d6873..80e0cf0acd62d957487565676324b347447e5650 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # Grow both members from 2 disks to 5 disks
 # POSITIVE test
 
index 26b69f18065689ecb4b92e2572503e851c4d532c..17f24d735076080de7a5250a89bf4939ed18366b 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # Grow a container (arrays inside) from 3 disks to 4 disks
 # POSITIVE test
 
index e2ce5d0b0082603278c93a25965dfda3e0e21658..b4bde4493ccf9e1db2eae31223809511e88e5879 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # Grow the container (arrays inside) from 3 disks to 4 disks
 # POSITIVE test
 
index 47d3f37dae81a6571ea7d8b06871dfb4a6ea36bb..6462d6b891596c423f9967c534874fb2d36de6ac 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # Grow the container (arrays inside) from 3 disks to 5 disks
 # POSITIVE test
 
index 79115a352b146d2ff30433f8ee311cdff0a6f4aa..32ebc92486b7fb9b34b033910fa28ad72edc3ccb 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # Grow the container (arrays inside) from 3 disks to 4 disks
 # POSITIVE test
 
index 990c828b5ffdf04ecf29c603162320eb4318d177..a97002d0da23a0c70822a43b7cf6b148f3f1bea5 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # Grow the container (arrays inside) from 3 disks to 5 disks
 # POSITIVE test
 
index 378d3433899f2719fabf1014e2f6b408ccd3e4b7..386abeee4273843c54328051a80fad0c33297d0d 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 0 and RAID 5 volumes (3 disks) migrate to RAID 5 and RAID 5 volumes (4 disks)
 # NEGATIVE test - migration is not allowed if there is more then one array in a container
 
index 44b3f425f76cf749531ab0ccb7f5227e7d159695..10bbab6d21a362e4e211f17f3e0e8be49bdf13ec 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 0 volume (3 disks, no spares) migrate to RAID 5 volume (3 disks)
 # NEGATIVE test
 
index da1a8924bfbb01960597fc81ec5d75f7b961f4dc..89d63a6daf93f9362659d08ad0e7678a79fc2788 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 
 # Two RAID 0 volumes (2 disks) migrate to RAID 10 volume (4 disks)
 # NEGATIVE test
index efffb9a32491d04e1c34a4d78e17cdaef935a6a7..bcbe1476d385167250a09caa259170a1f2029522 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 10 volume, 4 disks grow to RAID 10 volume, 5 disks
 # NEGATIVE test
 
index b0a8331364ac21aa7d940dc6332713dc02f564f6..9e5205e245e227bd9826f24edc48feb179c71b1f 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 
 # Two RAID volumes: RAID10 and RAID5 (4 disks) migrate to RAID 0 volume (2 disks)
 # NEGATIVE test
index d0d51eb16611497c8ab355d8689143e2c4f0c43f..1edd50e4aba557a1886647cb3d0844c3a72ab69f 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 1 volume, 2 disks grow to RAID 1 volume, 3 disks
 # NEGATIVE test
 
index 7f57ebf069546c635ec47ebd7c28b0491a5a2ce7..d8296815d35068e8d836e237c1f50c10d35a5fee 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 1 volume, 2 disks change to RAID 0 volume, 2 disks
 #
 #NEGATIVE test
index ff3cd59f326f3ca517dd70e47eecec28b58ccfbe..ed18e72bc7e0c9d40880cd8c3c0bc9f92b256fcd 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 5 volume, 3 disks grow to RAID 5 volume, 4 disks
 # NEGATIVE test
 
index 506772e3d406470d41a6e9039b82ff2bf78fec84..e3b971cc924188f8c18030cb0aee3c86711de15a 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 5 volume (3 disks) migrate to RAID 4 volume (3 disks)
 # NEGATIVE test
 
index 03b19ff48df41cca56f5d5f151f0b6bbfe598874..be59e3d83d829242024d3ea28e0dcbc41919723e 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 0 volume, Migration from 64k to 256k chunk size.
 # POSITIVE test
 
index 14106e0058e99ee4ba5dd1c72bf589af94a59816..025e9efbe784a9b7d93c4bca642b15d19d33f6bf 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 5 volume, Migration from 4k to 256 chunk size.
 # POSITIVE test
 
index 9c447a587c4f7caad1ac1bf57d4bb3eff61c72b3..37547b745a4e77f3289cc4126261011703d952c4 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 5 volume, Migration from 64k to 256k chunk size.
 # POSITIVE test
 
index baaa1820de79ec1c50a63d4963f0519ea7e100a6..d2f6c7073661bef7af74582d5fe8a93386975d9c 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 5 volume, Migration from 4k to 256k chunk size.
 # POSITIVE test
 
index 550803640ea831c4d9e63cdfb2d8ff67066dcd22..da218efacbc02e99d37569148155042630e25234 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # Member 0: RAID 5 volume, Member 1: RAID 0 volume
 # Migration from 64k to 256k chunk size (both members)
 # POSITIVE test
index cef4512b09c37f050db3ff465c94db83a303c928..4f45479a962e6b1bb646b7ccd67bec7ad5c4d56c 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 0 volume (3 disks) migrate to RAID 5 volume (4 disks)
 # POSITIVE test
 
index 1c83da1023bdc47d1c5708ef6e763042613ed2f0..bee505bf6a73564de058e1409f30222b487b37b6 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 0 volume (5 disks) migrate to RAID 5 volume (6 disks)
 # POSITIVE test
 
index 28ea86358cef1106360865c73b20974cc837cfaf..5a83c4197f96d5b136da0557ea8b3928b76187eb 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 5 volume (3 disks) migrate to RAID 0 volume (3 disks)
 # POSITIVE test
 
index f035b74a116d4f6ae8d32eff8cbc6afb74c16efd..ff5a2d82c2ea1927388d909c9d1c4c19d7107adc 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 5 volume (5 disks) migration to RAID 0 volume (5 disks)
 # POSITIVE test
 
index 82401fc22a145bdd6e12fd506163a6401deb2886..bf462e27c16b45c6ef4b0d30a253a2f03e35109f 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # Create RAID 0 from a single disk.
 # POSITIVE test
 
index e965cbd77fccc8875620866269409ce4ae6f4af2..fa02b6c34777304b88d8e7f686f15b93175fbc6f 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # Create RAID 1 from a single disk
 # POSITIVE test
 
index fd825d96a58d9eff7eff5eb4c5072eddb961b932..a1c395bd341b5d8714dfc0e0b115099abafe4c0f 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 0 volume, 2 disks change to RAID 10 volume, 4 disks
 # POSITIVE test
 
index 19a1160210c7189bb9850566a8e1211370fc6e62..8a9606b46da486985e8548e3ebd636a080932ae5 100644 (file)
@@ -1,3 +1,5 @@
+. tests/env-imsm-template
+
 # RAID 10 volume, 4 disks change to RAID 0 volume, 2 disks
 # POSITIVE test
 
diff --git a/tests/env-08imsm-overlap b/tests/env-08imsm-overlap
deleted file mode 100644 (file)
index 83557d3..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-imsm_check() {
-   case $1 in
-    container )
-      grep -s "$(((418 * $2)/2)) blocks super external:imsm" /proc/mdstat > /dev/null || {
-               echo >&2 "ERROR correctly formed container not found"; cat /proc/mdstat; exit 1;}
-      ;;
-    member )
-      member=$2
-      num_disks=$3
-      level=$4
-      size=$5
-      offset=$6
-      err=0
-
-      eval `stat -L -c "let major=0x%t; let minor=0x%T;" $member`
-      sysfs=/sys/dev/block/${major}:${minor}
-      if [ ! -f ${sysfs}/md/array_state ]; then
-           echo "member array $member not found" >&2
-           cat /proc/mdstat >&2
-           exit 1
-      fi
-      for i in `seq 0 $((num_disks-1))`
-      do
-         _offset=`cat ${sysfs}/md/rd${i}/offset`
-         if [ $offset -ne $((_offset/2)) ]; then
-           echo "offset mismatch expected $offset got $_offset" >&2
-            err=$((err+1))
-         fi
-         _size=`cat ${sysfs}/md/rd${i}/size`
-         if [ $size -ne $_size ]; then
-           echo "offset mismatch expected $size got $_size" >&2
-            err=$((err+1))
-         fi
-      done
-
-      if [ $err -gt 0 ]; then
-          echo "$member failed check" >&2
-          cat /proc/mdstat >&2
-         mdadm -E /dev/loop0 >&2
-          exit 1
-      fi
-      ;;
-    * ) echo >&2 ERROR unknown check $1 ; exit 1;
-   esac
-}
-
-setup_env() {
-       export IMSM_DEVNAME_AS_SERIAL=1
-       export IMSM_NO_PLATFORM=1
-       container=/dev/md/container
-       member0=/dev/md/vol0
-       member1=/dev/md/vol1
-       member2=/dev/md/vol2
-       member3=/dev/md/vol3
-       member4=/dev/md/vol4
-}
-
-reset_env() {
-       unset IMSM_DEVNAME_AS_SERIAL
-       unset IMSM_NO_PLATFORM
-       unset imsm_check
-       unset container
-       unset member0
-       unset member1
-       unset member2
-       unset member3
-       unset member4
-}
diff --git a/tests/env-09imsm-assemble b/tests/env-09imsm-assemble
deleted file mode 100644 (file)
index b12954b..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-imsm_check_hold() {
-   if mdadm --remove $1 $2; then
-       echo "$2 removal from $1 should have been blocked" >&2
-       cat /proc/mdstat >&2
-       mdadm -E $2
-       exit 1
-   fi
-}
-
-imsm_check_removal() {
-   if ! mdadm --remove $1 $2 ; then
-       echo "$2 removal from $1 should have succeeded" >&2
-       cat /proc/mdstat >&2
-       mdadm -E $2
-       exit 1
-   fi
-}
-
-setup_env() {
-       export IMSM_DEVNAME_AS_SERIAL=1
-       export IMSM_TEST_OROM=1
-       container=/dev/md/container
-       member=/dev/md/vol0
-}
-
-reset_env() {
-       unset IMSM_DEVNAME_AS_SERIAL
-       unset IMSM_TEST_OROM
-       unset imsm_check
-       unset container
-       unset member
-}
diff --git a/tests/env-09imsm-create-fail-rebuild b/tests/env-09imsm-create-fail-rebuild
deleted file mode 100644 (file)
index b44746c..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-imsm_check_hold() {
-   if mdadm --remove $1 $2; then
-       echo "$2 removal from $1 should have been blocked" >&2
-       cat /proc/mdstat >&2
-       mdadm -E $2
-       exit 1
-   fi
-}
-
-imsm_check_removal() {
-   if ! mdadm --remove $1 $2 ; then
-       echo "$2 removal from $1 should have succeeded" >&2
-       cat /proc/mdstat >&2
-       mdadm -E $2
-       exit 1
-   fi
-}
-
-imsm_check() {
-   udevadm settle
-   case $1 in
-    container )
-      grep -s "$(((418 * $2)/2)) blocks super external:imsm" /proc/mdstat > /dev/null || {
-               echo >&2 "ERROR correctly formed container not found"; cat /proc/mdstat; exit 1;}
-      ;;
-    member )
-      member=$2
-      num_disks=$3
-      level=$4
-      size=$5
-      offset=$6
-      chunk=$7
-      err=0
-
-      if [ $level -ne 1 ]; then
-         size=$((size & ~(chunk - 1)))
-      else
-         chunk=64
-      fi
-      eval `stat -L -c "let major=0x%t; let minor=0x%T;" $member`
-      sysfs=/sys/dev/block/${major}:${minor}
-      if [ ! -f ${sysfs}/md/array_state ]; then
-           echo "member array $member not found" >&2
-           cat /proc/mdstat >&2
-           exit 1
-      fi
-      _chunk=`cat ${sysfs}/md/chunk_size`
-      if [ $chunk -ne $((_chunk/1024)) ]; then
-         echo "chunk mismatch expected $chunk got $_chunk" >&2
-         err=$((err+1))
-      fi
-      for i in `seq 0 $((num_disks-1))`
-      do
-         _offset=`cat ${sysfs}/md/rd${i}/offset`
-         if [ $offset -ne $((_offset/2)) ]; then
-           echo "offset mismatch expected $offset got $_offset" >&2
-            err=$((err+1))
-         fi
-         _size=`cat ${sysfs}/md/rd${i}/size`
-         if [ $size -ne $_size ]; then
-           echo "size mismatch expected $size got $_size" >&2
-            err=$((err+1))
-         fi
-      done
-
-      if [ $err -gt 0 ]; then
-          echo "$member failed check" >&2
-          cat /proc/mdstat >&2
-         mdadm -E /dev/loop0 >&2
-          exit 1
-      fi
-      ;;
-    * ) echo >&2 ERROR unknown check $1 ; exit 1;
-   esac
-}
-
-setup_env() {
-       export IMSM_DEVNAME_AS_SERIAL=1
-       export IMSM_TEST_OROM=1
-       container=/dev/md/container
-       member0=/dev/md/vol0
-       member1=/dev/md/vol1
-       member2=/dev/md/vol2
-       member3=/dev/md/vol3
-       member4=/dev/md/vol4
-}
-
-reset_env() {
-       unset IMSM_DEVNAME_AS_SERIAL
-       unset IMSM_TEST_OROM
-       unset imsm_check
-       unset container
-       unset member0
-       unset member1
-       unset member2
-       unset member3
-       unset member4
-}
diff --git a/tests/env-11spare-migration b/tests/env-11spare-migration
deleted file mode 100644 (file)
index d5eb76d..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-setup_env() {
-       export IMSM_DEVNAME_AS_SERIAL=1
-       export IMSM_TEST_OROM=1
-       export IMSM_NO_PLATFORM=1
-       }
-
-reset_env() {
-       unset IMSM_DEVNAME_AS_SERIAL
-       unset IMSM_TEST_OROM
-       unset IMSM_NO_PLATFORM
-}
diff --git a/tests/env-12imsm-r0_2d-grow-r0_3d b/tests/env-12imsm-r0_2d-grow-r0_3d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-12imsm-r0_2d-grow-r0_4d b/tests/env-12imsm-r0_2d-grow-r0_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-12imsm-r0_2d-grow-r0_5d b/tests/env-12imsm-r0_2d-grow-r0_5d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-12imsm-r0_3d-grow-r0_4d b/tests/env-12imsm-r0_3d-grow-r0_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-12imsm-r5_3d-grow-r5_4d b/tests/env-12imsm-r5_3d-grow-r5_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-12imsm-r5_3d-grow-r5_5d b/tests/env-12imsm-r5_3d-grow-r5_5d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-13imsm-r0_r0_2d-grow-r0_r0_4d b/tests/env-13imsm-r0_r0_2d-grow-r0_r0_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-13imsm-r0_r0_2d-grow-r0_r0_5d b/tests/env-13imsm-r0_r0_2d-grow-r0_r0_5d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-13imsm-r0_r0_3d-grow-r0_r0_4d b/tests/env-13imsm-r0_r0_3d-grow-r0_r0_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-13imsm-r0_r5_3d-grow-r0_r5_4d b/tests/env-13imsm-r0_r5_3d-grow-r0_r5_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-13imsm-r0_r5_3d-grow-r0_r5_5d b/tests/env-13imsm-r0_r5_3d-grow-r0_r5_5d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-13imsm-r5_r0_3d-grow-r5_r0_4d b/tests/env-13imsm-r5_r0_3d-grow-r5_r0_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-13imsm-r5_r0_3d-grow-r5_r0_5d b/tests/env-13imsm-r5_r0_3d-grow-r5_r0_5d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-14imsm-r0_3d-r5_3d-migrate-r5_4d-r5_4d b/tests/env-14imsm-r0_3d-r5_3d-migrate-r5_4d-r5_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-14imsm-r0_3d_no_spares-migrate-r5_3d b/tests/env-14imsm-r0_3d_no_spares-migrate-r5_3d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-14imsm-r0_r0_2d-takeover-r10_4d b/tests/env-14imsm-r0_r0_2d-takeover-r10_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-14imsm-r10_4d-grow-r10_5d b/tests/env-14imsm-r10_4d-grow-r10_5d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-14imsm-r10_r5_4d-takeover-r0_2d b/tests/env-14imsm-r10_r5_4d-takeover-r0_2d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-14imsm-r1_2d-grow-r1_3d b/tests/env-14imsm-r1_2d-grow-r1_3d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-14imsm-r1_2d-takeover-r0_2d b/tests/env-14imsm-r1_2d-takeover-r0_2d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-14imsm-r5_3d-grow-r5_4d-no-spares b/tests/env-14imsm-r5_3d-grow-r5_4d-no-spares
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-14imsm-r5_3d-grow-r5_5d-no-spares b/tests/env-14imsm-r5_3d-grow-r5_5d-no-spares
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-14imsm-r5_3d-migrate-r4_3d b/tests/env-14imsm-r5_3d-migrate-r4_3d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-15imsm-r0_3d_64k-migrate-r0_3d_256k b/tests/env-15imsm-r0_3d_64k-migrate-r0_3d_256k
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-15imsm-r5_3d_4k-migrate-r5_3d_256k b/tests/env-15imsm-r5_3d_4k-migrate-r5_3d_256k
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-15imsm-r5_3d_64k-migrate-r5_3d_256k b/tests/env-15imsm-r5_3d_64k-migrate-r5_3d_256k
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-15imsm-r5_6d_4k-migrate-r5_6d_256k b/tests/env-15imsm-r5_6d_4k-migrate-r5_6d_256k
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-15imsm-r5_r0_3d_64k-migrate-r5_r0_3d_128k b/tests/env-15imsm-r5_r0_3d_64k-migrate-r5_r0_3d_128k
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-15imsm-r5_r0_3d_64k-migrate-r5_r0_3d_256k b/tests/env-15imsm-r5_r0_3d_64k-migrate-r5_r0_3d_256k
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-16imsm-r0_3d-migrate-r5_4d b/tests/env-16imsm-r0_3d-migrate-r5_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-16imsm-r0_5d-migrate-r5_6d b/tests/env-16imsm-r0_5d-migrate-r5_6d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-16imsm-r5_3d-migrate-r0_3d b/tests/env-16imsm-r5_3d-migrate-r0_3d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-16imsm-r5_5d-migrate-r0_5d b/tests/env-16imsm-r5_5d-migrate-r0_5d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-17imsm-r5_3d-migrate-r4_3d b/tests/env-17imsm-r5_3d-migrate-r4_3d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-18imsm-1d-takeover-r0_1d b/tests/env-18imsm-1d-takeover-r0_1d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-18imsm-1d-takeover-r1_2d b/tests/env-18imsm-1d-takeover-r1_2d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-18imsm-r0_2d-takeover-r10_4d b/tests/env-18imsm-r0_2d-takeover-r10_4d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-18imsm-r10_4d-takeover-r0_2d b/tests/env-18imsm-r10_4d-takeover-r0_2d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
diff --git a/tests/env-18imsm-r1_2d-takeover-r0_2d b/tests/env-18imsm-r1_2d-takeover-r0_2d
deleted file mode 120000 (symlink)
index 1801784..0000000
+++ /dev/null
@@ -1 +0,0 @@
-env-imsm-template
\ No newline at end of file
index 8238ddd8888d3b60660ccf25bc2fa13af99f3dc7..74c43c6803cbb1c54674da6bc6517485628fca08 100644 (file)
@@ -62,24 +62,10 @@ imsm_check() {
     esac
 }
 
-setup_env() {
-    export IMSM_NO_PLATFORM=1
-    export IMSM_DEVNAME_AS_SERIAL=1
-    export IMSM_TEST_OROM=1
-    export MDADM_EXPERIMENTAL=1
-    container=/dev/md/container
-    member0=/dev/md/vol0
-    member1=/dev/md/vol1
-}
-
-reset_env() {
-    unset IMSM_NO_PLATFORM
-    unset IMSM_DENAME_AS_SERIAL
-    unset IMSM_TEST_OROM
-    unset MDADM_EXPERIMENTAL
-    unset member0
-    unset member1
-    unset imsm_check
-    unset container
-    rm -f /tmp/backup_imsm
-}
+export IMSM_NO_PLATFORM=1
+export IMSM_DEVNAME_AS_SERIAL=1
+export IMSM_TEST_OROM=1
+export MDADM_EXPERIMENTAL=1
+container=/dev/md/container
+member0=/dev/md/vol0
+member1=/dev/md/vol1