Blame SOURCES/mdadm-test-Convert-code-formatto-use-Tab.patch

2c1b57
From 662c349a5a995c270c8f7bcf0a4b4a0408c813fd Mon Sep 17 00:00:00 2001
2c1b57
From: Zhilong Liu <zlliu@suse.com>
2c1b57
Date: Wed, 7 Jun 2017 17:31:26 +0800
2c1b57
Subject: [RHEL7.5 PATCH 154/169] mdadm/test: Convert code format to use
2c1b57
 Tab
2c1b57
2c1b57
In case to make codes neat, this commit didn't change
2c1b57
any codes, just tidy up and use Tab as code format.
2c1b57
2c1b57
Signed-off-by: Zhilong Liu <zlliu@suse.com>
2c1b57
Signed-off-by: Jes Sorensen <jsorensen@fb.com>
2c1b57
---
2c1b57
 test | 702 ++++++++++++++++++++++++++++++++++++-------------------------------
2c1b57
 1 file changed, 378 insertions(+), 324 deletions(-)
2c1b57
2c1b57
diff --git a/test b/test
2c1b57
index 13f1bda..7942d6e 100755
2c1b57
--- a/test
2c1b57
+++ b/test
2c1b57
@@ -3,8 +3,9 @@
2c1b57
 # run test suite for mdadm
2c1b57
 user=`id -un`
2c1b57
 if [ " $user" != " root" ]
2c1b57
-then echo >&2 "test: testing can only be done as 'root'."
2c1b57
-     exit 1;
2c1b57
+then
2c1b57
+	echo >&2 "test: testing can only be done as 'root'."
2c1b57
+	exit 1
2c1b57
 fi
2c1b57
 
2c1b57
 prefix='[0-9][0-9]'
2c1b57
@@ -13,7 +14,7 @@ dir=`pwd`
2c1b57
 mdadm=$dir/mdadm
2c1b57
 if [ \! -x $mdadm ]
2c1b57
 then
2c1b57
-   echo >&2 "test: $mdadm isn't usable."
2c1b57
+	echo >&2 "test: $mdadm isn't usable."
2c1b57
 fi
2c1b57
 
2c1b57
 testdir="tests"
2c1b57
@@ -25,8 +26,9 @@ echo "Testing on linux-$(uname -r) kernel"
2c1b57
 
2c1b57
 # Check whether to run multipath tests
2c1b57
 modprobe multipath 2> /dev/null
2c1b57
-if grep -s 'Personalities : .*multipath' > /dev/null /proc/mdstat ; then
2c1b57
-    MULTIPATH="yes"
2c1b57
+if grep -s 'Personalities : .*multipath' > /dev/null /proc/mdstat
2c1b57
+then
2c1b57
+	MULTIPATH="yes"
2c1b57
 fi
2c1b57
 INTEGRITY=yes
2c1b57
 DEVTYPE=loop
2c1b57
@@ -36,7 +38,9 @@ LVM_VOLGROUP=mdtest
2c1b57
 export MDADM_NO_SYSTEMCTL=1
2c1b57
 
2c1b57
 # assume md0, md1, md2 exist in /dev
2c1b57
-md0=/dev/md0 md1=/dev/md1 md2=/dev/md2
2c1b57
+md0=/dev/md0
2c1b57
+md1=/dev/md1
2c1b57
+md2=/dev/md2
2c1b57
 mdp0=/dev/md_d0
2c1b57
 mdp1=/dev/md_d1
2c1b57
 
2c1b57
@@ -69,21 +73,21 @@ config=/tmp/mdadm.conf
2c1b57
 cleanup() {
2c1b57
 	udevadm settle
2c1b57
 	$mdadm -Ssq 2> /dev/null
2c1b57
-        case $DEVTYPE in
2c1b57
-        loop)
2c1b57
-	  for d in 0 1 2 3 4 5 6 7  8 9 10 11 12 13
2c1b57
-	  do
2c1b57
-	    losetup -d /dev/loop$d ; # rm -f $targetdir/mdtest$d
2c1b57
-	    rm -f /dev/disk/by-path/loop*
2c1b57
-	  done
2c1b57
-          ;;
2c1b57
-        lvm)
2c1b57
-	  for d in 0 1 2 3 4 5 6 7  8 9 10 11 12 13
2c1b57
-	  do
2c1b57
-	    eval "lvremove --quiet -f \$dev$d"
2c1b57
-	  done
2c1b57
-          ;;
2c1b57
-        esac
2c1b57
+	case $DEVTYPE in
2c1b57
+	loop)
2c1b57
+		for d in 0 1 2 3 4 5 6 7  8 9 10 11 12 13
2c1b57
+		do
2c1b57
+			losetup -d /dev/loop$d # rm -f $targetdir/mdtest$d
2c1b57
+			rm -f /dev/disk/by-path/loop*
2c1b57
+		done
2c1b57
+		;;
2c1b57
+	lvm)
2c1b57
+		for d in 0 1 2 3 4 5 6 7  8 9 10 11 12 13
2c1b57
+		do
2c1b57
+			eval "lvremove --quiet -f \$dev$d"
2c1b57
+		done
2c1b57
+		;;
2c1b57
+	esac
2c1b57
 }
2c1b57
 
2c1b57
 ctrl_c() {
2c1b57
@@ -91,329 +95,377 @@ ctrl_c() {
2c1b57
 }
2c1b57
 
2c1b57
 do_setup() {
2c1b57
-  trap cleanup 0 1 3 15
2c1b57
-  trap ctrl_c 2
2c1b57
+	trap cleanup 0 1 3 15
2c1b57
+	trap ctrl_c 2
2c1b57
 
2c1b57
-  # make sure there are no loop devices remaining.
2c1b57
-  # udev started things can sometimes prevent them being stopped
2c1b57
-  # immediately
2c1b57
-  while grep loop /proc/partitions > /dev/null 2>&1
2c1b57
-  do
2c1b57
-    mdadm -Ss
2c1b57
-    losetup -d /dev/loop[0-9]* 2> /dev/null
2c1b57
-    sleep 1
2c1b57
-  done
2c1b57
-  devlist=
2c1b57
-  for d in 0 1 2 3 4 5 6 7 8 9 10 11 12 13
2c1b57
-  do
2c1b57
-    sz=$size
2c1b57
-    if [ $d -gt 7 ]; then sz=$ddfsize ; fi
2c1b57
-    case $DEVTYPE in
2c1b57
-    loop)
2c1b57
-      [ -f $targetdir/mdtest$d ] || dd if=/dev/zero of=$targetdir/mdtest$d count=$sz bs=1K > /dev/null 2>&1
2c1b57
-      # make sure udev doesn't touch
2c1b57
-      mdadm --zero $targetdir/mdtest$d 2> /dev/null
2c1b57
-      [ -b /dev/loop$d ] || mknod /dev/loop$d b 7 $d
2c1b57
-      if [ $d -eq 7 ]
2c1b57
-      then
2c1b57
-        losetup /dev/loop$d $targetdir/mdtest6 # for multipath use
2c1b57
-      else
2c1b57
-        losetup /dev/loop$d $targetdir/mdtest$d
2c1b57
-      fi
2c1b57
-      eval dev$d=/dev/loop$d
2c1b57
-      eval file$d=$targetdir/mdtest$d
2c1b57
-      ;;
2c1b57
-    lvm)
2c1b57
-      unset MULTIPATH
2c1b57
-      eval dev$d=/dev/mapper/${LVM_VOLGROUP}-mdtest$d
2c1b57
-      if ! lvcreate --quiet -L ${sz}K -n mdtest$d $LVM_VOLGROUP; then
2c1b57
-	  trap '' 0 # make sure lvremove is not called
2c1b57
-	  eval echo error creating \$dev$d
2c1b57
-	  exit 129
2c1b57
-      fi
2c1b57
-      ;;
2c1b57
-    ram)
2c1b57
-      unset MULTIPATH
2c1b57
-      eval dev$d=/dev/ram$d
2c1b57
-      ;;
2c1b57
-    esac
2c1b57
-    eval devlist=\"\$devlist \$dev$d\"
2c1b57
-    eval devlist$d=\"\$devlist\"
2c1b57
-   #" <-- add this quote to un-confuse vim syntax highlighting
2c1b57
-  done
2c1b57
-  path0=$dev6
2c1b57
-  path1=$dev7
2c1b57
-
2c1b57
-  ulimit -c unlimited
2c1b57
-  [ -f /proc/mdstat ] || modprobe md_mod
2c1b57
-  echo 2000 > /proc/sys/dev/raid/speed_limit_max
2c1b57
-  echo 0 > /sys/module/md_mod/parameters/start_ro
2c1b57
+	# make sure there are no loop devices remaining.
2c1b57
+	# udev started things can sometimes prevent them being stopped
2c1b57
+	# immediately
2c1b57
+	while grep loop /proc/partitions > /dev/null 2>&1
2c1b57
+	do
2c1b57
+		mdadm -Ss
2c1b57
+		losetup -d /dev/loop[0-9]* 2> /dev/null
2c1b57
+		sleep 1
2c1b57
+	done
2c1b57
+	devlist=
2c1b57
+	for d in 0 1 2 3 4 5 6 7 8 9 10 11 12 13
2c1b57
+	do
2c1b57
+		sz=$size
2c1b57
+		if [ $d -gt 7 ]
2c1b57
+		then
2c1b57
+			sz=$ddfsize
2c1b57
+		fi
2c1b57
+		case $DEVTYPE in
2c1b57
+		loop)
2c1b57
+			[ -f $targetdir/mdtest$d ] ||
2c1b57
+				dd if=/dev/zero of=$targetdir/mdtest$d count=$sz bs=1K > /dev/null 2>&1
2c1b57
+			# make sure udev doesn't touch
2c1b57
+			mdadm --zero $targetdir/mdtest$d 2> /dev/null
2c1b57
+			[ -b /dev/loop$d ] || mknod /dev/loop$d b 7 $d
2c1b57
+			if [ $d -eq 7 ]
2c1b57
+			then
2c1b57
+				losetup /dev/loop$d $targetdir/mdtest6 # for multipath use
2c1b57
+			else
2c1b57
+				losetup /dev/loop$d $targetdir/mdtest$d
2c1b57
+			fi
2c1b57
+			eval dev$d=/dev/loop$d
2c1b57
+			eval file$d=$targetdir/mdtest$d
2c1b57
+			;;
2c1b57
+		lvm)
2c1b57
+			unset MULTIPATH
2c1b57
+			eval dev$d=/dev/mapper/${LVM_VOLGROUP}-mdtest$d
2c1b57
+			if ! lvcreate --quiet -L ${sz}K -n mdtest$d $LVM_VOLGROUP
2c1b57
+			then
2c1b57
+				trap '' 0 # make sure lvremove is not called
2c1b57
+				eval echo error creating \$dev$d
2c1b57
+				exit 129
2c1b57
+			fi
2c1b57
+			;;
2c1b57
+		ram)
2c1b57
+			unset MULTIPATH
2c1b57
+			eval dev$d=/dev/ram$d
2c1b57
+			;;
2c1b57
+		esac
2c1b57
+		eval devlist=\"\$devlist \$dev$d\"
2c1b57
+		eval devlist$d=\"\$devlist\"
2c1b57
+		#" <-- add this quote to un-confuse vim syntax highlighting
2c1b57
+	done
2c1b57
+	path0=$dev6
2c1b57
+	path1=$dev7
2c1b57
+	ulimit -c unlimited
2c1b57
+	[ -f /proc/mdstat ] || modprobe md_mod
2c1b57
+	echo 2000 > /proc/sys/dev/raid/speed_limit_max
2c1b57
+	echo 0 > /sys/module/md_mod/parameters/start_ro
2c1b57
 }
2c1b57
 
2c1b57
 # mdadm always adds --quiet, and we want to see any unexpected messages
2c1b57
 mdadm() {
2c1b57
-    rm -f $targetdir/stderr
2c1b57
-    case $* in
2c1b57
-	*-S* ) udevadm settle
2c1b57
-	       p=`cat /proc/sys/dev/raid/speed_limit_max`
2c1b57
-	       echo 20000 > /proc/sys/dev/raid/speed_limit_max
2c1b57
-    esac
2c1b57
-    case $* in
2c1b57
-	*-C* ) $mdadm 2> $targetdir/stderr --quiet "$@" --auto=yes;;
2c1b57
-	* )    $mdadm 2> $targetdir/stderr --quiet "$@"
2c1b57
-    esac
2c1b57
-    rv=$?
2c1b57
-    case $* in
2c1b57
-	*-S* ) udevadm settle
2c1b57
-	       echo $p > /proc/sys/dev/raid/speed_limit_max
2c1b57
-    esac
2c1b57
-    cat >&2 $targetdir/stderr
2c1b57
-    return $rv
2c1b57
+	rm -f $targetdir/stderr
2c1b57
+	case $* in
2c1b57
+	*-S* )
2c1b57
+		udevadm settle
2c1b57
+		p=`cat /proc/sys/dev/raid/speed_limit_max`
2c1b57
+		echo 20000 > /proc/sys/dev/raid/speed_limit_max
2c1b57
+		;;
2c1b57
+	esac
2c1b57
+	case $* in
2c1b57
+	*-C* )
2c1b57
+		$mdadm 2> $targetdir/stderr --quiet "$@" --auto=yes
2c1b57
+		;;
2c1b57
+	* )
2c1b57
+		$mdadm 2> $targetdir/stderr --quiet "$@"
2c1b57
+		;;
2c1b57
+	esac
2c1b57
+	rv=$?
2c1b57
+	case $* in
2c1b57
+	*-S* )
2c1b57
+		udevadm settle
2c1b57
+		echo $p > /proc/sys/dev/raid/speed_limit_max
2c1b57
+		;;
2c1b57
+	esac
2c1b57
+	cat >&2 $targetdir/stderr
2c1b57
+	return $rv
2c1b57
 }
2c1b57
 
2c1b57
 # check various things
2c1b57
 check() {
2c1b57
-   case $1 in
2c1b57
-    spares )
2c1b57
-       spares=`tr '] ' '\012\012' < /proc/mdstat | grep -c '(S)' || exit 0`
2c1b57
-       if [ $spares -ne $2 ]
2c1b57
-       then
2c1b57
-          echo >&2 "ERROR expected $2 spares, found $spares"; exit 1;
2c1b57
-       fi
2c1b57
-      ;;
2c1b57
-    raid* | linear )
2c1b57
-      grep -s "active $1 " /proc/mdstat > /dev/null || {
2c1b57
-		echo >&2 "ERROR active $1 not found" ; cat /proc/mdstat ; exit 1;}
2c1b57
-     ;;
2c1b57
-    algorithm )
2c1b57
-      grep -s " algorithm $2 " /proc/mdstat > /dev/null || {
2c1b57
-	  echo >&2 "ERROR algorithm $2 not found"; cat /proc/mdstat; exit 1;}
2c1b57
-     ;;
2c1b57
-    resync | recovery | reshape)
2c1b57
-	cnt=5
2c1b57
-	while ! grep -s $1 /proc/mdstat > /dev/null
2c1b57
-	do
2c1b57
-	    if [ $cnt -gt 0 ] && grep -v idle /sys/block/md*/md/sync_action > /dev/null
2c1b57
-	    then # Something isn't idle - wait a bit
2c1b57
+	case $1 in
2c1b57
+	spares )
2c1b57
+		spares=`tr '] ' '\012\012' < /proc/mdstat | grep -c '(S)' || exit 0`
2c1b57
+		if [ $spares -ne $2 ]
2c1b57
+		then
2c1b57
+			echo >&2 "ERROR expected $2 spares, found $spares"
2c1b57
+			exit 1
2c1b57
+		fi
2c1b57
+		;;
2c1b57
+	raid* | linear )
2c1b57
+		grep -s "active $1 " /proc/mdstat > /dev/null || {
2c1b57
+			echo >&2 "ERROR active $1 not found"
2c1b57
+			cat /proc/mdstat
2c1b57
+			exit 1
2c1b57
+		}
2c1b57
+		;;
2c1b57
+	algorithm )
2c1b57
+		grep -s " algorithm $2 " /proc/mdstat > /dev/null || {
2c1b57
+			echo >&2 "ERROR algorithm $2 not found"
2c1b57
+			cat /proc/mdstat
2c1b57
+			exit 1
2c1b57
+		}
2c1b57
+		;;
2c1b57
+	resync | recovery | reshape )
2c1b57
+		cnt=5
2c1b57
+		while ! grep -s $1 /proc/mdstat > /dev/null
2c1b57
+		do
2c1b57
+			if [ $cnt -gt 0 ] && grep -v idle /sys/block/md*/md/sync_action > /dev/null
2c1b57
+			then # Something isn't idle - wait a bit
2c1b57
+				sleep 0.5
2c1b57
+				cnt=$[cnt-1]
2c1b57
+			else
2c1b57
+				echo >&2 ERROR no $1 happening
2c1b57
+				cat /proc/mdstat
2c1b57
+				exit 1
2c1b57
+			fi
2c1b57
+		done
2c1b57
+		;;
2c1b57
+	nosync )
2c1b57
 		sleep 0.5
2c1b57
-		cnt=$[cnt-1]
2c1b57
-	    else
2c1b57
-		echo >&2 ERROR no $1 happening; cat /proc/mdstat; exit 1
2c1b57
-	    fi
2c1b57
-	done
2c1b57
-	;;
2c1b57
-
2c1b57
-     nosync )
2c1b57
-       sleep 0.5
2c1b57
-       # Since 4.2 we delay the close of recovery until there has been a chance for
2c1b57
-       # spares to be activated.  That means that a recovery that finds nothing
2c1b57
-       # to do can still take a little longer than expected.
2c1b57
-       # add an extra check: is sync_completed shows the end is reached, assume
2c1b57
-       # there is no recovery.
2c1b57
-       if grep -s -E '(resync|recovery|reshape) *=' > /dev/null /proc/mdstat ; then
2c1b57
-	   incomplete=`grep / /sys/block/md*/md/sync_completed 2> /dev/null | sed '/^ *\([0-9]*\) \/ \1/d'`
2c1b57
-	   if [ -n "$incomplete" ]; then
2c1b57
-		echo >&2 "ERROR resync or recovery is happening!"; cat /proc/mdstat ; exit 1;
2c1b57
-	   fi
2c1b57
-       fi
2c1b57
-     ;;
2c1b57
-
2c1b57
-    wait )
2c1b57
-      p=`cat /proc/sys/dev/raid/speed_limit_max`
2c1b57
-      echo 2000000 > /proc/sys/dev/raid/speed_limit_max
2c1b57
-      sleep 0.1
2c1b57
-      while grep -E '(resync|recovery|reshape|check|repair) *=' > /dev/null /proc/mdstat ||
2c1b57
-	      grep -v idle > /dev/null /sys/block/md*/md/sync_action
2c1b57
-      do sleep 0.5;
2c1b57
-      done
2c1b57
-      echo $p > /proc/sys/dev/raid/speed_limit_max
2c1b57
-      ;;
2c1b57
-
2c1b57
-    state )
2c1b57
-       grep -s "blocks.*\[$2\]\$" /proc/mdstat > /dev/null || {
2c1b57
-		echo >&2 "ERROR state $2 not found!"; cat /proc/mdstat ; exit 1; }
2c1b57
-       sleep 0.5
2c1b57
-      ;;
2c1b57
-
2c1b57
-    bitmap )
2c1b57
-       grep -s bitmap > /dev/null /proc/mdstat || {
2c1b57
-		echo >&2 ERROR no bitmap ; cat /proc/mdstat ; exit 1; }
2c1b57
-      ;;
2c1b57
-    nobitmap )
2c1b57
-       if grep -s "bitmap" > /dev/null /proc/mdstat
2c1b57
-       then
2c1b57
-		echo >&2 ERROR bitmap present ; cat /proc/mdstat ; exit 1;
2c1b57
-       fi
2c1b57
-      ;;
2c1b57
-
2c1b57
-    readonly )
2c1b57
-       grep -s "read-only" > /dev/null /proc/mdstat || {
2c1b57
-                echo >&2 "ERROR array is not read-only!"; cat /proc/mdstat ; exit 1; }
2c1b57
-      ;;
2c1b57
-
2c1b57
-    inactive )
2c1b57
-       grep -s "inactive" > /dev/null /proc/mdstat || {
2c1b57
-                echo >&2 "ERROR array is not inactive!"; cat /proc/mdstat ; exit 1; }
2c1b57
-      ;;
2c1b57
-    * ) echo >&2 ERROR unknown check $1 ; exit 1;
2c1b57
-   esac
2c1b57
+		# Since 4.2 we delay the close of recovery until there has been a chance for
2c1b57
+		# spares to be activated.  That means that a recovery that finds nothing
2c1b57
+		# to do can still take a little longer than expected.
2c1b57
+		# add an extra check: is sync_completed shows the end is reached, assume
2c1b57
+		# there is no recovery.
2c1b57
+		if grep -s -E '(resync|recovery|reshape) *=' > /dev/null /proc/mdstat
2c1b57
+		then
2c1b57
+			incomplete=`grep / /sys/block/md*/md/sync_completed 2> /dev/null | sed '/^ *\([0-9]*\) \/ \1/d'`
2c1b57
+			if [ -n "$incomplete" ]
2c1b57
+			then
2c1b57
+				echo >&2 "ERROR resync or recovery is happening!"
2c1b57
+				cat /proc/mdstat
2c1b57
+				exit 1
2c1b57
+			fi
2c1b57
+		fi
2c1b57
+		;;
2c1b57
+	wait )
2c1b57
+		p=`cat /proc/sys/dev/raid/speed_limit_max`
2c1b57
+		echo 2000000 > /proc/sys/dev/raid/speed_limit_max
2c1b57
+		sleep 0.1
2c1b57
+		while grep -E '(resync|recovery|reshape|check|repair) *=' > /dev/null /proc/mdstat ||
2c1b57
+			grep -v idle > /dev/null /sys/block/md*/md/sync_action
2c1b57
+		do
2c1b57
+			sleep 0.5
2c1b57
+		done
2c1b57
+		echo $p > /proc/sys/dev/raid/speed_limit_max
2c1b57
+		;;
2c1b57
+	state )
2c1b57
+		grep -s "blocks.*\[$2\]\$" /proc/mdstat > /dev/null || {
2c1b57
+			echo >&2 "ERROR state $2 not found!"
2c1b57
+			cat /proc/mdstat
2c1b57
+			exit 1
2c1b57
+		}
2c1b57
+		sleep 0.5
2c1b57
+		;;
2c1b57
+	bitmap )
2c1b57
+		grep -s bitmap > /dev/null /proc/mdstat || {
2c1b57
+			echo >&2 ERROR no bitmap
2c1b57
+			cat /proc/mdstat
2c1b57
+			exit 1
2c1b57
+		}
2c1b57
+		;;
2c1b57
+	nobitmap )
2c1b57
+		if grep -s "bitmap" > /dev/null /proc/mdstat
2c1b57
+		then
2c1b57
+			echo >&2 ERROR bitmap present
2c1b57
+			cat /proc/mdstat
2c1b57
+			exit 1
2c1b57
+		fi
2c1b57
+		;;
2c1b57
+	readonly )
2c1b57
+		grep -s "read-only" > /dev/null /proc/mdstat || {
2c1b57
+			echo >&2 "ERROR array is not read-only!"
2c1b57
+			cat /proc/mdstat
2c1b57
+			exit 1
2c1b57
+		}
2c1b57
+		;;
2c1b57
+	inactive )
2c1b57
+		grep -s "inactive" > /dev/null /proc/mdstat || {
2c1b57
+			echo >&2 "ERROR array is not inactive!"
2c1b57
+			cat /proc/mdstat
2c1b57
+			exit 1
2c1b57
+		}
2c1b57
+		;;
2c1b57
+	* )
2c1b57
+		echo >&2 ERROR unknown check $1
2c1b57
+		exit 1
2c1b57
+		;;
2c1b57
+	esac
2c1b57
 }
2c1b57
 
2c1b57
 no_errors() {
2c1b57
-  if [ -s $targetdir/stderr ]
2c1b57
-  then echo Bad errors from mdadm: ; cat $targetdir/stderr; exit 2;
2c1b57
-  fi
2c1b57
+	if [ -s $targetdir/stderr ]
2c1b57
+	then
2c1b57
+		echo Bad errors from mdadm:
2c1b57
+		cat $targetdir/stderr
2c1b57
+		exit 2
2c1b57
+	fi
2c1b57
 }
2c1b57
-# basic device test
2c1b57
 
2c1b57
+# basic device test
2c1b57
 testdev() {
2c1b57
-   udevadm settle
2c1b57
-   dev=$1
2c1b57
-   cnt=$2
2c1b57
-   dvsize=$3
2c1b57
-   chunk=$4
2c1b57
-   if [ -z "$5" ]; then
2c1b57
-      mkfs.ext3 -F -j $dev > /dev/null 2>&1 && fsck -fn $dev >&2
2c1b57
-   fi
2c1b57
-   dsize=$[dvsize/chunk]
2c1b57
-   dsize=$[dsize*chunk]
2c1b57
-   rasize=$[dsize*2*cnt]
2c1b57
-   # rasize is in sectors
2c1b57
-   if [ -n "$DEV_ROUND_K" ]; then
2c1b57
-      rasize=$[rasize/DEV_ROUND_K/2]
2c1b57
-      rasize=$[rasize*DEV_ROUND_K*2]
2c1b57
-   fi
2c1b57
-   if [ `/sbin/blockdev --getsize $dev` -eq 0 ]; then sleep 2 ; fi
2c1b57
-   _sz=`/sbin/blockdev --getsize $dev`
2c1b57
-   if [ $rasize -lt $_sz -o $[rasize*4/5] -gt $_sz ]
2c1b57
-   then
2c1b57
-     echo "ERROR: size is wrong for $dev: $cnt * $dvsize (chunk=$chunk) = $rasize, not $_sz"
2c1b57
-     exit 1
2c1b57
-   fi
2c1b57
+	udevadm settle
2c1b57
+	dev=$1
2c1b57
+	cnt=$2
2c1b57
+	dvsize=$3
2c1b57
+	chunk=$4
2c1b57
+	if [ -z "$5" ]
2c1b57
+	then
2c1b57
+		mkfs.ext3 -F -j $dev > /dev/null 2>&1 && fsck -fn $dev >&2
2c1b57
+	fi
2c1b57
+	dsize=$[dvsize/chunk]
2c1b57
+	dsize=$[dsize*chunk]
2c1b57
+	rasize=$[dsize*2*cnt]
2c1b57
+	# rasize is in sectors
2c1b57
+	if [ -n "$DEV_ROUND_K" ]
2c1b57
+	then
2c1b57
+		rasize=$[rasize/DEV_ROUND_K/2]
2c1b57
+		rasize=$[rasize*DEV_ROUND_K*2]
2c1b57
+	fi
2c1b57
+	if [ `/sbin/blockdev --getsize $dev` -eq 0 ]
2c1b57
+	then
2c1b57
+		sleep 2
2c1b57
+	fi
2c1b57
+	_sz=`/sbin/blockdev --getsize $dev`
2c1b57
+	if [ $rasize -lt $_sz -o $[rasize*4/5] -gt $_sz ]
2c1b57
+	then
2c1b57
+		echo "ERROR: size is wrong for $dev: $cnt * $dvsize (chunk=$chunk) = $rasize, not $_sz"
2c1b57
+		exit 1
2c1b57
+	fi
2c1b57
 }
2c1b57
 
2c1b57
 fast_sync() {
2c1b57
-  echo 200000 > /proc/sys/dev/raid/speed_limit_max
2c1b57
+	echo 200000 > /proc/sys/dev/raid/speed_limit_max
2c1b57
 }
2c1b57
 
2c1b57
 rotest() {
2c1b57
-  dev=$1
2c1b57
-  fsck -fn $dev >&2
2c1b57
+	dev=$1
2c1b57
+	fsck -fn $dev >&2
2c1b57
 }
2c1b57
 
2c1b57
 do_test() {
2c1b57
-  _script=$1
2c1b57
-  _basename=`basename $_script`
2c1b57
-  if [ -f "$_script" ]
2c1b57
-  then
2c1b57
-    rm -f $targetdir/stderr
2c1b57
-    # stop all arrays, just incase some script left an array active.
2c1b57
-    $mdadm -Ssq 2> /dev/null
2c1b57
-    mdadm --zero $devlist 2> /dev/null
2c1b57
-    mdadm --zero $devlist 2> /dev/null
2c1b57
-    # this might have been reset: restore the default.
2c1b57
-    echo 2000 > /proc/sys/dev/raid/speed_limit_max
2c1b57
-    # source script in a subshell, so it has access to our
2c1b57
-    # namespace, but cannot change it.
2c1b57
-    echo -ne "$_script... "
2c1b57
-    if ( set -ex ; . $_script ) &> $targetdir/log
2c1b57
-    then
2c1b57
-      echo "succeeded"
2c1b57
-      _fail=0
2c1b57
-    else
2c1b57
-      log=log
2c1b57
-      cat $targetdir/stderr >> $targetdir/log
2c1b57
-      echo "=======================dmesg=================" >> $targetdir/log
2c1b57
-      dmesg | tail -n 200 >> $targetdir/log
2c1b57
-      if [ $exitonerror == 0 ]; then
2c1b57
-	  log=log-`basename $_script`
2c1b57
-	  mv $targetdir/log $logdir/$log
2c1b57
-      fi
2c1b57
-      echo "FAILED - see $logdir/$log for details"
2c1b57
-      _fail=1
2c1b57
-    fi
2c1b57
-    if [ "$savelogs" == "1" ]; then
2c1b57
-      cp $targetdir/log $logdir/$_basename.log
2c1b57
-    fi
2c1b57
-    if [ "$_fail" == "1" -a "$exitonerror" == "1" ]; then
2c1b57
-      exit 1
2c1b57
-    fi
2c1b57
-  fi
2c1b57
+	_script=$1
2c1b57
+	_basename=`basename $_script`
2c1b57
+	if [ -f "$_script" ]
2c1b57
+	then
2c1b57
+		rm -f $targetdir/stderr
2c1b57
+		# stop all arrays, just incase some script left an array active.
2c1b57
+		$mdadm -Ssq 2> /dev/null
2c1b57
+		mdadm --zero $devlist 2> /dev/null
2c1b57
+		mdadm --zero $devlist 2> /dev/null
2c1b57
+		# this might have been reset: restore the default.
2c1b57
+		echo 2000 > /proc/sys/dev/raid/speed_limit_max
2c1b57
+		# source script in a subshell, so it has access to our
2c1b57
+		# namespace, but cannot change it.
2c1b57
+		echo -ne "$_script... "
2c1b57
+		if ( set -ex ; . $_script ) &> $targetdir/log
2c1b57
+		then
2c1b57
+			echo "succeeded"
2c1b57
+			_fail=0
2c1b57
+		else
2c1b57
+			log=log
2c1b57
+			cat $targetdir/stderr >> $targetdir/log
2c1b57
+			echo "=======================dmesg=================" >> $targetdir/log
2c1b57
+			dmesg | tail -n 200 >> $targetdir/log
2c1b57
+			if [ $exitonerror == 0 ]; then
2c1b57
+				log=log-`basename $_script`
2c1b57
+				mv $targetdir/log $logdir/$log
2c1b57
+			fi
2c1b57
+			echo "FAILED - see $logdir/$log for details"
2c1b57
+			_fail=1
2c1b57
+		fi
2c1b57
+		if [ "$savelogs" == "1" ]
2c1b57
+		then
2c1b57
+			cp $targetdir/log $logdir/$_basename.log
2c1b57
+		fi
2c1b57
+		if [ "$_fail" == "1" -a "$exitonerror" == "1" ]
2c1b57
+		then
2c1b57
+			exit 1
2c1b57
+		fi
2c1b57
+	fi
2c1b57
 }
2c1b57
 
2c1b57
 do_help() {
2c1b57
-  echo "Usage: $0 [options]"
2c1b57
-  echo " Options:"
2c1b57
-  echo "    --tests=<test1,test2,..>    Comma separated list of tests to run"
2c1b57
-  echo "    --disable-multipath         Disable any tests involving multipath"
2c1b57
-  echo "    --disable-integrity         Disable slow tests of RAID[56] consistency"
2c1b57
-  echo "    --logdir=<directory>        Directory to save logfiles in"
2c1b57
-  echo "    --save-logs                 Save all logs in <logdir>"
2c1b57
-  echo "    --keep-going                Don't stop on error, ie. run all tests"
2c1b57
-  echo "    --dev=[loop|lvm|ram]        Use loop devices (default), LVM, or RAM disk"
2c1b57
-  echo "    --volgroup=<name>           LVM volume group for LVM test"
2c1b57
-  echo "    setup                       Setup test environment and exit"
2c1b57
-  echo "    cleanup                     Cleanup test environment"
2c1b57
-  echo "    <prefix>                    Run tests with <prefix>"
2c1b57
+	echo "Usage: $0 [options]"
2c1b57
+	echo " Options:"
2c1b57
+	echo "    --tests=<test1,test2,..>    Comma separated list of tests to run"
2c1b57
+	echo "    --disable-multipath         Disable any tests involving multipath"
2c1b57
+	echo "    --disable-integrity         Disable slow tests of RAID[56] consistency"
2c1b57
+	echo "    --logdir=<directory>        Directory to save logfiles in"
2c1b57
+	echo "    --save-logs                 Save all logs in <logdir>"
2c1b57
+	echo "    --keep-going                Don't stop on error, ie. run all tests"
2c1b57
+	echo "    --dev=[loop|lvm|ram]        Use loop devices (default), LVM, or RAM disk"
2c1b57
+	echo "    --volgroup=<name>           LVM volume group for LVM test"
2c1b57
+	echo "    setup                       Setup test environment and exit"
2c1b57
+	echo "    cleanup                     Cleanup test environment"
2c1b57
+	echo "    <prefix>                    Run tests with <prefix>"
2c1b57
 }
2c1b57
 
2c1b57
 parse_args() {
2c1b57
-  for i in $*
2c1b57
-  do
2c1b57
-    case $i in
2c1b57
-    [0-9]*)
2c1b57
-      prefix=$i
2c1b57
-      ;;
2c1b57
-    setup)
2c1b57
-      echo "mdadm test environment setup"
2c1b57
-      do_setup
2c1b57
-      trap 0; exit 0
2c1b57
-      ;;
2c1b57
-    cleanup)
2c1b57
-      cleanup
2c1b57
-      exit 0
2c1b57
-      ;;
2c1b57
-    --tests=*)
2c1b57
-      TESTLIST=`expr "x$i" : 'x[^=]*=\(.*\)' | sed -e 's/,/ /g'`
2c1b57
-      ;;
2c1b57
-    --logdir=*)
2c1b57
-      logdir=`expr "x$i" : 'x[^=]*=\(.*\)'`
2c1b57
-      ;;
2c1b57
-    --save-logs)
2c1b57
-      savelogs=1
2c1b57
-      ;;
2c1b57
-    --keep-going | --no-error)
2c1b57
-      exitonerror=0
2c1b57
-      ;;
2c1b57
-    --disable-multipath)
2c1b57
-      unset MULTIPATH
2c1b57
-      ;;
2c1b57
-    --disable-integrity)
2c1b57
-      unset INTEGRITY
2c1b57
-      ;;
2c1b57
-    --dev=loop)
2c1b57
-      DEVTYPE=loop
2c1b57
-      ;;
2c1b57
-    --dev=lvm)
2c1b57
-      DEVTYPE=lvm
2c1b57
-      ;;
2c1b57
-    --dev=ram)
2c1b57
-      DEVTYPE=ram
2c1b57
-      ;;
2c1b57
-    --volgroup=*)
2c1b57
-      LVM_VOLGROUP=`expr "x$i" : 'x[^=]*=\(.*\)'`
2c1b57
-      ;;
2c1b57
-    --help)
2c1b57
-      do_help
2c1b57
-      exit 0;
2c1b57
-      ;;
2c1b57
-    -*)
2c1b57
-      echo " $0: Unknown argument: $i"
2c1b57
-      do_help
2c1b57
-      exit 0;
2c1b57
-      ;;
2c1b57
-    esac
2c1b57
-done
2c1b57
+	for i in $*
2c1b57
+	do
2c1b57
+		case $i in
2c1b57
+		[0-9]* )
2c1b57
+			prefix=$i
2c1b57
+			;;
2c1b57
+		setup )
2c1b57
+			echo "mdadm test environment setup"
2c1b57
+			do_setup
2c1b57
+			trap 0
2c1b57
+			exit 0
2c1b57
+			;;
2c1b57
+		cleanup )
2c1b57
+			cleanup
2c1b57
+			exit 0
2c1b57
+			;;
2c1b57
+		--tests=* )
2c1b57
+			TESTLIST=`expr "x$i" : 'x[^=]*=\(.*\)' | sed -e 's/,/ /g'`
2c1b57
+			;;
2c1b57
+		--logdir=* )
2c1b57
+			logdir=`expr "x$i" : 'x[^=]*=\(.*\)'`
2c1b57
+			;;
2c1b57
+		--save-logs )
2c1b57
+			savelogs=1
2c1b57
+			;;
2c1b57
+		--keep-going | --no-error )
2c1b57
+			exitonerror=0
2c1b57
+			;;
2c1b57
+		--disable-multipath )
2c1b57
+			unset MULTIPATH
2c1b57
+			;;
2c1b57
+		--disable-integrity )
2c1b57
+			unset INTEGRITY
2c1b57
+			;;
2c1b57
+		--dev=loop )
2c1b57
+			DEVTYPE=loop
2c1b57
+			;;
2c1b57
+		--dev=lvm )
2c1b57
+			DEVTYPE=lvm
2c1b57
+			;;
2c1b57
+		--dev=ram )
2c1b57
+			DEVTYPE=ram
2c1b57
+			;;
2c1b57
+		--volgroup=* )
2c1b57
+			LVM_VOLGROUP=`expr "x$i" : 'x[^=]*=\(.*\)'`
2c1b57
+			;;
2c1b57
+		--help )
2c1b57
+			do_help
2c1b57
+			exit 0
2c1b57
+			;;
2c1b57
+		-* )
2c1b57
+			echo " $0: Unknown argument: $i"
2c1b57
+			do_help
2c1b57
+			exit 0
2c1b57
+			;;
2c1b57
+		esac
2c1b57
+	done
2c1b57
 }
2c1b57
 
2c1b57
 logdir=$targetdir
2c1b57
@@ -422,19 +474,21 @@ parse_args $@
2c1b57
 do_setup
2c1b57
 mkdir -p $logdir
2c1b57
 
2c1b57
-if [ "$savelogs" == "1" ]; then
2c1b57
-  echo "Saving logs to $logdir"
2c1b57
+if [ "$savelogs" == "1" ]
2c1b57
+then
2c1b57
+	echo "Saving logs to $logdir"
2c1b57
 fi
2c1b57
 
2c1b57
-if [ "x$TESTLIST" != "x" ]; then
2c1b57
-  for script in $TESTLIST
2c1b57
-  do
2c1b57
-    do_test $testdir/$script
2c1b57
-  done
2c1b57
+if [ "x$TESTLIST" != "x" ]
2c1b57
+then
2c1b57
+	for script in $TESTLIST
2c1b57
+	do
2c1b57
+		do_test $testdir/$script
2c1b57
+	done
2c1b57
 else
2c1b57
-  for script in $testdir/$prefix $testdir/$prefix*[^~]
2c1b57
-  do
2c1b57
-    do_test $script
2c1b57
-  done
2c1b57
+	for script in $testdir/$prefix $testdir/$prefix*[^~]
2c1b57
+	do
2c1b57
+		do_test $script
2c1b57
+	done
2c1b57
 fi
2c1b57
 exit 0
2c1b57
-- 
2c1b57
2.7.4
2c1b57