Whamcloud - gitweb
Branch HEAD
[fs/lustre-release.git] / lustre / tests / runregression-net.sh
index f0bbfbb..58f33ef 100644 (file)
@@ -1,14 +1,25 @@
 #!/bin/sh
-export PATH=/sbin:/usr/sbin:$PATH
-
 SRCDIR="`dirname $0`/"
-. $SRCDIR/common.sh
+export PATH=/sbin:/usr/sbin:$SRCDIR/../utils:$PATH
+
+COUNT=${COUNT:-100000}
+COUNT_10=`expr $COUNT / 10`
+COUNT_100=`expr $COUNT / 100`
+COUNT_1000=`expr $COUNT / 1000`
+
+ENDRUN=endrun-`hostname`
 
-setup_opts $@
+ECHONAME="`lctl device_list 2> /dev/null | awk '/ echo_client / { print $4 }' | tail -n 1`"
 
-setup_portals
-setup_lustre
+if [ -z "$ECHONAME" ]; then
+       echo "$0: needs an ECHO_CLIENT set up first" 1>&2
+       exit 1
+fi
 
+cleanup () {
+       lctl --device \$$ECHONAME destroy $OID
+}
+       
 runthreads() {
        THR=$1
        DO=$2
@@ -24,26 +35,23 @@ runthreads() {
                DO=test_brw
                RW=w
                ;;
-
        test_brw_read)
                DO=test_brw
                RW=r
                ;;
        esac
 
-       $OBDCTL --threads $THR v '$OSCDEV' $DO $CNT $RW $V $PGS $OID || exit 1
+       lctl --threads $THR v \$$ECHONAME $DO $CNT $RW $V $PGS $OID || exit 1
 
-       if [ -e endrun ]; then
-               rm endrun
-               echo "exiting because endrun file was found"
-               exit 0
+       if [ -e $ENDRUN ]; then
+               rm $ENDRUN
+               echo "exiting because $ENDRUN file was found"
+               cleanup
        fi
 }
 
-setup_server || exit -1
-setup_client || exit -1
-
-OID=`$OBDCTL --device '$OSCDEV' create 1 | awk '/is object id/ { print $6 }'`
+[ -z "$OID" ] && OID=`lctl --device \\$$ECHONAME create 1 | awk '/is object id/ { print $6 }'` && echo "created object $OID"
+[ -z "$OID" ] && echo "error creating object" 1>&2 && exit 1
 
 # TODO: obdctl needs to check on the progress of each forked thread
 #       (IPC SHM, sockets?) to see if it hangs.
@@ -55,15 +63,11 @@ for CMD in test_getattr test_brw_write test_brw_read; do
                ;;
        test_brw_write)
                PG=1
-               PGV=16
+               PGV=${PGV:-16}
                ;;
-
        test_brw_read)
                PG=1
-               case $OSTNODE in
-               ba*) PGV= ;; # disabled until the BA OST code is updated
-               *) PGV=16 ;;
-               esac
+               PGV=${PGV:-16}
                ;;
        esac
 
@@ -72,35 +76,24 @@ for CMD in test_getattr test_brw_write test_brw_read; do
        runthreads 1 $CMD 1 1 $PG
        runthreads 1 $CMD 100 1 $PG
 
-       debug_server_off
-       debug_client_off
-       runthreads 1 $CMD 10000 100 $PG
-       [ "$PGV" ] && runthreads 1 $CMD 1000 100 $PGV
+       echo 0 > /proc/sys/lnet/debug
+       runthreads 1 $CMD $COUNT_100 -10 $PG
+       [ "$PGV" ] && runthreads 1 $CMD $COUNT_1000 -10 $PGV
 
-       runthreads 1 $CMD 1000000 -30 $PG
-       [ "$PGV" ] && runthreads 1 $CMD 100000 -30 $PGV
+       runthreads 1 $CMD $COUNT -30 $PG
+       [ "$PGV" ] && runthreads 1 $CMD $COUNT_10 -30 $PGV
 
-       debug_server_on
-       debug_client_on
-       runthreads 1 $CMD 100 1 $PG
+       runthreads 2 $CMD $COUNT_100 -30 $PG
+       [ "$PGV" ] && runthreads 2 $CMD $COUNT_1000 -30 $PGV
 
-       debug_server_off
-       debug_client_off
-       runthreads 2 $CMD 10000 100 $PG
-       [ "$PGV" ] && runthreads 2 $CMD 1000 100 $PGV
+       runthreads 2 $CMD $COUNT -30 $PG
+       [ "$PGV" ] && runthreads 2 $CMD $COUNT_10 -30 $PGV
 
-       runthreads 2 $CMD 1000000 -30 $PG
-       [ "$PGV" ] && runthreads 2 $CMD 100000 -30 $PGV
+       runthreads 10 $CMD $COUNT_10 -30 $PG
+       [ "$PGV" ] && runthreads 10 $CMD $COUNT_100 -30 $PGV
 
-       runthreads 10 $CMD 10000 1000 $PG
-       [ "$PGV" ] && runthreads 10 $CMD 1000 1000 $PGV
-
-       runthreads 100 $CMD 10000 -30 $PG
+       runthreads 100 $CMD $COUNT_100 -30 $PG
+       [ "$PGV" ] && runthreads 100 $CMD $COUNT_1000 -30 $PGV
 done
 
-$OBDCTL --device '$OSCDEV' destroy $OID
-
-cleanup_client || exit -1
-cleanup_server || exit -1
-cleanup_lustre
-cleanup_portals
+lctl --device \$$ECHONAME destroy $OID