Whamcloud - gitweb
b=23014 sgpdd-survey acc-sm integration
authorElena Gryaznova <grev@sun.com>
Thu, 24 Jun 2010 15:45:15 +0000 (19:45 +0400)
committerJohann Lombardi <johann@sun.com>
Thu, 24 Jun 2010 15:58:00 +0000 (17:58 +0200)
i=Andreas.Dilger

lustre/tests/Makefile.am
lustre/tests/acceptance-small.sh
lustre/tests/sgpdd-survey.sh [new file with mode: 0644]
lustre/tests/test-framework.sh

index 645fb10..d667577 100644 (file)
@@ -23,6 +23,7 @@ noinst_SCRIPTS += recovery-mds-scale.sh run_dd.sh run_tar.sh run_iozone.sh
 noinst_SCRIPTS += run_dbench.sh run_IOR.sh recovery-double-scale.sh
 noinst_SCRIPTS += recovery-random-scale.sh parallel-scale.sh metadata-updates.sh
 noinst_SCRIPTS += ost-pools.sh rpc.sh lnet-selftest.sh obdfilter-survey.sh mmp.sh
+noinst_SCRIPTS += sgpdd-survey.sh
 nobase_noinst_SCRIPTS = cfg/local.sh
 nobase_noinst_SCRIPTS += acl/make-tree acl/run cfg/ncli.sh
 nobase_noinst_SCRIPTS += racer/dir_create.sh racer/file_create.sh racer/file_list.sh
index 4204831..da001eb 100755 (executable)
@@ -23,7 +23,7 @@ fi
 [ "$DEBUG_OFF" ] || DEBUG_OFF="eval lctl set_param debug=\"$DEBUG_LVL\""
 [ "$DEBUG_ON" ] || DEBUG_ON="eval lctl set_param debug=0x33f0484"
 
-export TESTSUITE_LIST="RUNTESTS SANITY DBENCH BONNIE IOZONE FSX SANITYN LFSCK LIBLUSTRE RACER REPLAY_SINGLE CONF_SANITY RECOVERY_SMALL REPLAY_OST_SINGLE REPLAY_DUAL REPLAY_VBR INSANITY SANITY_QUOTA PERFORMANCE_SANITY LARGE_SCALE RECOVERY_MDS_SCALE RECOVERY_DOUBLE_SCALE RECOVERY_RANDOM_SCALE PARALLEL_SCALE METADATA_UPDATES OST_POOLS SANITY_BENCHMARK LNET_SELFTEST OBDFILTER_SURVEY MMP"
+export TESTSUITE_LIST="RUNTESTS SANITY DBENCH BONNIE IOZONE FSX SANITYN LFSCK LIBLUSTRE RACER REPLAY_SINGLE CONF_SANITY RECOVERY_SMALL REPLAY_OST_SINGLE REPLAY_DUAL REPLAY_VBR INSANITY SANITY_QUOTA PERFORMANCE_SANITY LARGE_SCALE RECOVERY_MDS_SCALE RECOVERY_DOUBLE_SCALE RECOVERY_RANDOM_SCALE PARALLEL_SCALE METADATA_UPDATES OST_POOLS SANITY_BENCHMARK LNET_SELFTEST MMP OBDFILTER_SURVEY SGPDD_SURVEY"
 
 if [ "$ACC_SM_ONLY" ]; then
     for O in $TESTSUITE_LIST; do
@@ -467,16 +467,22 @@ if [ "$LNET_SELFTEST" != "no" ]; then
         LNET_SELFTEST="done"
 fi
 
+if [ "$MMP" != "no" ]; then
+        title mmp
+        bash mmp.sh
+        MMP="done"
+fi
+
 if [ "$OBDFILTER_SURVEY" != "no" ]; then
         title obdfilter-survey
         bash obdfilter-survey.sh
         OBDFILTER_SURVEY="done"
 fi
 
-if [ "$MMP" != "no" ]; then
-        title mmp
-        bash mmp.sh
-        MMP="done"
+if [ "$SGPDD_SURVEY" != "no" ] && [ "$SGPDD_YES" ] && [ "$REFORMAT" ]; then
+        title sgpdd-survey
+        bash sgpdd-survey.sh
+        SGPDD_SURVEY="done"
 fi
 
 RC=$?
diff --git a/lustre/tests/sgpdd-survey.sh b/lustre/tests/sgpdd-survey.sh
new file mode 100644 (file)
index 0000000..f01716c
--- /dev/null
@@ -0,0 +1,72 @@
+#!/bin/bash
+#set -x
+set -e
+
+LUSTRE=${LUSTRE:-`dirname $0`/..}
+. $LUSTRE/tests/test-framework.sh
+init_test_env $@
+
+# QE uses the following parameters:
+# size=128 crghi=16 thrhi=32
+crghi=${crghi:-2}
+thrhi=${thrhi:-16} 
+size=${size:-1024}
+
+. ${CONFIG:=$LUSTRE/tests/cfg/$NAME.sh}
+
+[ "$SLOW" = no ] && { crghi=2; thrhi=2; }
+
+# Skip these tests
+ALWAYS_EXCEPT="$SGPDD_SURVEY_EXCEPT"
+
+SGPDDSURVEY=${OBDSURVEY:-$(which sgpdd-survey)}
+
+build_test_filter
+
+init_facets_vars
+
+cleanupall
+
+run_sgpdd_host () {
+    local host=$1
+    local devs=$2
+
+    local params="size=$size crghi=$crghi thrhi=$thrhi"
+    do_rpc_nodes $host run_sgpdd $devs "$params"
+}
+
+test_1 () {
+    local facet=mds
+
+    local host=$(facet_host $facet)
+    local dev=${facet}_dev
+    echo "=== $facet === $host === ${!dev} ==="
+    run_sgpdd_host $host ${!dev}
+}
+run_test 1 "sgpdd-survey, mds, scsidevs"
+
+test_2 () {
+    local facet
+
+    local osts=$(get_facets OST)
+    
+    local ostshosts
+    for facet in ${osts//,/ }; do
+        local host=$(facet_host $facet)
+        local dev=${facet}_dev
+        local var=${host}_devs
+        eval ${var}=$(expand_list ${!var} ${!dev})
+       ostshosts=$(expand_list $ostshosts $host)
+    done
+
+    for host in ${ostshosts//,/ }; do
+       var=${host}_devs
+        echo "=== osts === $host === ${!var} ==="
+        local scsidevs=${!var}
+        run_sgpdd_host $host ${scsidevs}
+    done
+}
+run_test 2 "sgpdd-survey, osts, scsidevs"
+
+equals_msg `basename $0`: test complete, cleaning up
+[ -f "$TESTSUITELOG" ] && cat $TESTSUITELOG || true
index 9d80a6c..374b114 100644 (file)
@@ -129,6 +129,7 @@ init_test_env() {
     fi
     export LST=${LST:-"$LUSTRE/../lnet/utils/lst"}
     [ ! -f "$LST" ] && export LST=$(which lst)
+    export SGPDDSURVEY=${OBDSURVEY:-$(which sgpdd-survey)}
     export MDSRATE=${MDSRATE:-"$LUSTRE/tests/mpi/mdsrate"}
     [ ! -f "$MDSRATE" ] && export MDSRATE=$(which mdsrate 2> /dev/null)
     if ! echo $PATH | grep -q $LUSTRE/tests/racer; then
@@ -3327,3 +3328,18 @@ duplicate_mdt_files() {
     done
     do_umount
 }
+
+run_sgpdd () {
+    local devs=${1//,/ }
+    shift
+    local params=$@
+    local rslt=$TMP/sgpdd_survey
+
+    # sgpdd-survey cleanups ${rslt}.* files
+
+    local cmd="rslt=$rslt $params scsidevs=\"$devs\" $SGPDDSURVEY"
+    echo + $cmd
+    eval $cmd
+    cat ${rslt}.detail
+}
+