From aa7b44da8412e203fd6727c0b534d9f9b24aad76 Mon Sep 17 00:00:00 2001 From: grev Date: Sat, 29 Dec 2007 13:41:13 +0000 Subject: [PATCH] b=14348 i=Adilger remove obsolete test scripts --- lustre/tests/Makefile.am | 30 ++-- lustre/tests/echo.sh | 90 ----------- lustre/tests/kbuild | 311 --------------------------------------- lustre/tests/lkcdmap | 13 -- lustre/tests/llechocleanup.sh | 15 -- lustre/tests/lstiming.sh | 51 ------- lustre/tests/mount2fs.sh | 48 ------ lustre/tests/recovery-cleanup.sh | 145 ------------------ lustre/tests/routed.sh | 156 -------------------- lustre/tests/run-quotacheck.sh | 30 ---- lustre/tests/run-quotactl.sh | 30 ---- lustre/tests/run-quotafmt.sh | 29 ---- lustre/tests/runslabinfo | 6 - lustre/tests/sanity-buffalo.sh | 231 ----------------------------- lustre/tests/sanity.sh | 7 +- lustre/tests/tmpfs-sanity.sh | 149 ------------------- 16 files changed, 17 insertions(+), 1324 deletions(-) delete mode 100755 lustre/tests/echo.sh delete mode 100755 lustre/tests/kbuild delete mode 100755 lustre/tests/lkcdmap delete mode 100755 lustre/tests/llechocleanup.sh delete mode 100644 lustre/tests/lstiming.sh delete mode 100644 lustre/tests/mount2fs.sh delete mode 100755 lustre/tests/recovery-cleanup.sh delete mode 100644 lustre/tests/routed.sh delete mode 100644 lustre/tests/run-quotacheck.sh delete mode 100644 lustre/tests/run-quotactl.sh delete mode 100644 lustre/tests/run-quotafmt.sh delete mode 100755 lustre/tests/runslabinfo delete mode 100755 lustre/tests/sanity-buffalo.sh delete mode 100755 lustre/tests/tmpfs-sanity.sh diff --git a/lustre/tests/Makefile.am b/lustre/tests/Makefile.am index 780f37e..2d16b87 100644 --- a/lustre/tests/Makefile.am +++ b/lustre/tests/Makefile.am @@ -5,33 +5,29 @@ AM_CFLAGS = $(LLCFLAGS) # LDADD := -lreadline -ltermcap # -lefence noinst_DATA = disk1_4.zip -noinst_SCRIPTS = leak_finder.pl llecho.sh llmount.sh llmountcleanup.sh -noinst_SCRIPTS += sanity.sh rundbench test-framework.sh -noinst_SCRIPTS += acceptance-small.sh compile.sh conf-sanity.sh -noinst_SCRIPTS += echo.sh insanity.sh lfscktest.sh llechocleanup.sh -noinst_SCRIPTS += llog-test.sh lockorder.sh lstiming.sh mount2fs.sh oos2.sh -noinst_SCRIPTS += oos.sh recovery-cleanup.sh recovery-small.sh replay-dual.sh -noinst_SCRIPTS += replay-ost-single.sh replay-single.sh routed.sh run-llog.sh -noinst_SCRIPTS += run-quotacheck.sh run-quotactl.sh run-quotafmt.sh -noinst_SCRIPTS += sanity-buffalo.sh sanityN.sh sanity-quota.sh tmpfs-sanity.sh -noinst_SCRIPTS += kbuild lkcdmap rundbench runiozone runvmstat runslabinfo -noinst_SCRIPTS += runtests socketclient socketserver sanity-sec.sh -nobase_noinst_SCRIPTS = cfg/insanity-local.sh cfg/insanity-ltest.sh +noinst_SCRIPTS = leak_finder.pl llecho.sh llmount.sh llmountcleanup.sh +noinst_SCRIPTS += test-framework.sh runvmstat runiozone runtests +noinst_SCRIPTS += sanity.sh rundbench acceptance-small.sh compile.sh +noinst_SCRIPTS += conf-sanity.sh insanity.sh lfscktest.sh oos.sh oos2.sh +noinst_SCRIPTS += llog-test.sh recovery-small.sh replay-dual.sh sanity-quota.sh +noinst_SCRIPTS += replay-ost-single.sh replay-single.sh run-llog.sh sanityN.sh +noinst_SCRIPTS += lockorder.sh socketclient socketserver sanity-sec.sh +nobase_noinst_SCRIPTS = cfg/insanity-local.sh cfg/insanity-ltest.sh nobase_noinst_SCRIPTS += cfg/local.sh acl/make-tree acl/run -nobase_noinst_DATA = acl/cp.test acl/getfacl-noacl.test acl/inheritance.test +nobase_noinst_DATA = acl/cp.test acl/getfacl-noacl.test acl/inheritance.test nobase_noinst_DATA += acl/misc.test acl/permissions.test acl/setfacl.test EXTRA_DIST = $(noinst_SCRIPTS) $(noinst_DATA) \ $(nobase_noinst_SCRIPTS) $(nobase_noinst_DATA) if TESTS -noinst_PROGRAMS = openunlink truncate directio openme writeme +noinst_PROGRAMS = openunlink truncate directio openme writeme mlink utime noinst_PROGRAMS += tchmod toexcl fsx test_brw openclose createdestroy -noinst_PROGRAMS += stat createmany chownmany statmany multifstat createtest mlink utime +noinst_PROGRAMS += stat createmany chownmany statmany multifstat createtest noinst_PROGRAMS += opendirunlink opendevunlink unlinkmany fchdir_test checkstat -noinst_PROGRAMS += wantedi statone runas openfile getdents o_directory +noinst_PROGRAMS += wantedi statone runas openfile getdents o_directory rmdirmany noinst_PROGRAMS += small_write multiop sleeptest ll_sparseness_verify cmknod -noinst_PROGRAMS += ll_sparseness_write mrename ll_dirstripe_verify mkdirmany rmdirmany +noinst_PROGRAMS += ll_sparseness_write mrename ll_dirstripe_verify mkdirmany noinst_PROGRAMS += openfilleddirunlink rename_many memhog iopentest1 iopentest2 noinst_PROGRAMS += mmap_sanity flock_test writemany random-reads flocks_test noinst_PROGRAMS += ll_getstripe_info write_time_limit diff --git a/lustre/tests/echo.sh b/lustre/tests/echo.sh deleted file mode 100755 index f289f94..0000000 --- a/lustre/tests/echo.sh +++ /dev/null @@ -1,90 +0,0 @@ -#!/bin/bash - -LOV=${LOV:-0} -while [ "$1" ]; do - case $1 in - --lov) LOV="1" ;; - *) [ -z $config ] && config=$1 || OPTS="$OPTS $1" ;; - esac - shift -done - -config=${config:-$(basename $0 .sh).xml} -LMC=${LMC:-../utils/lmc -m $config} -TMP=${TMP:-/tmp} - -HOSTNAME=`hostname` -SERVER=${SERVER:-$HOSTNAME} -CLIENT=${CLIENT:-$HOSTNAME} -NET=${NET:-tcp} -[ "$ACCEPTOR_PORT" ] && PORT_OPT="--port $ACCEPTOR_PORT" - -h2tcp () { - case $1 in - client) echo '\*' ;; - *) echo $1 ;; - esac -} - -h2mx () { - case $1 in - client) echo '\*' ;; - *) echo $1 ;; - esac -} - -h2gm () { - echo `gmnalnid -n $1` -} - -h2elan () { - echo $1 | sed 's/[^0-9]*//g' -} - -h2iib () { - case $1 in - client) echo '\*' ;; - *) echo $1 | sed "s/[^0-9]*//" ;; - esac -} - -# -# PJK: I believe this is correct -# PTL NID's are of the form -# num@ptl -# -h2ptl () { - echo $1 | sed 's/[^0-9]*//g' -} - -# FIXME: make LMC not require MDS for obdecho LOV -MDSDEV=${MDSDEV:-$TMP/mds1-`hostname`} -MDSSIZE=10000 -FSTYPE=${FSTYPE:-ext3} - -STRIPE_BYTES=1048576 -STRIPES_PER_OBJ=2 # 0 means stripe over all OSTs - -rm -f $config -# create nodes -$LMC --add node --node $SERVER || exit 1 -$LMC --add net --node $SERVER --nid `h2$NET $SERVER` --nettype $NET $PORT_OPT|| exit 2 - -if (($LOV)); then - $LMC --add mds --node $SERVER --mds mds1 --fstype $FSTYPE --dev $MDSDEV --size $MDSSIZE || exit 10 - $LMC --add lov --lov lov1 --mds mds1 --stripe_sz $STRIPE_BYTES --stripe_cnt $STRIPES_PER_OBJ --stripe_pattern 0 || exit 11 - $LMC --add ost --node $SERVER --lov lov1 --osdtype=obdecho || exit 12 - $LMC --add ost --node $SERVER --lov lov1 --osdtype=obdecho || exit 13 - OBD_NAME=lov1 -else - $LMC --add ost --ost obd1 --node $SERVER --osdtype=obdecho || exit 12 - OBD_NAME=obd1 -fi - -if [ "$SERVER" != "$CLIENT" ]; then - $LMC --add node --node $CLIENT || exit 1 - $LMC --add net --node $CLIENT --nid `h2$NET $CLIENT` --nettype $NET $PORT_OPT || exit 2 -fi - -$LMC --add echo_client --node $CLIENT --ost ${OBD_NAME} || exit 3 - diff --git a/lustre/tests/kbuild b/lustre/tests/kbuild deleted file mode 100755 index a6fdb57..0000000 --- a/lustre/tests/kbuild +++ /dev/null @@ -1,311 +0,0 @@ -#! /bin/sh - -# -# lustre/lustre/tests/kbuild -# -# Copyright (C) 2005 Cluster File Systems, Inc. -# -# Author: Nikita Danilov -# -# This file is part of Lustre, http://www.lustre.org. -# -# Lustre is free software; you can redistribute it and/or modify it -# under the terms of version 2 of the GNU General Public License as -# published by the Free Software Foundation. -# -# Lustre is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with Lustre; if not, write to the Free Software Foundation, -# Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# -# -# kbuild is a swiss-army linux kernel build script. Its purpose is to run -# automated kernel builds on given target file system (presumably Lustre) to -# measure file system performance and, occasionally, correctness. -# -# Usual kernel build doesn't not stress file system, because the bottleneck -# is CPU consumption by the user level (compiler). To work around this, -# kbuild uses ccache(1) that eliminates most of CPU load by the compiler, -# once the cache is primed. -# -# Options: - -function usage() -{ - cat <] \\ - [-t ] \\ - [-m ] \\ - [-i ] \\ - [-v ] \\ - [-c ] \\ - [-S] \\ - [-C ] - - -s source of kernel to build. This can be: - - . path to directory; - - . tar.gz, .tgz, or .tar.bz2 archive; - - . ftp or http URL to the source archive; - - defaults to "$src". - - -t target directory, where build process takes place. - Defaults to "$tgt". - - -m additional options supplied to each make invocation. - Defaults to "$mopt" - - -c kernel makefile target to invoke to configure kernel - (defconfig, allyesconfig, allmodconfig, etc.). This - option conflicts with -C . Defaults to - "$mconfig". - - -C use given .config file as kernel configuration. Not - used by default. - - -S skip kernel copying: kernel source is already unpacked - in $target. Defaults to false. - - -v increase verbosity level. - -Examples: - - $pname -s /usr/src/linux-2.6.10-base.tar.gz -t /mnt/lustre2 \\ - -m -j4 -C /usr/src/.config.fc3 - - $pname -s ftp://ftp.clusterfs.com/pub/kernels/fc3-2.6/linux-2.6.10-base.tgz \\ - -m -j4 -c defconfig -vvv - -EOF - exit 1 -} - -# -# Results: -# -# The output of kbuild are times as reported by time. First line is for build -# that fills the ccache cache (that is also located on the target file -# system). Consecutive times are repeated builds that reuse ccache -# cache. Number of iteration is set through -i option. Example output: -# -# R 783.757 S 319.615 U 281.720 -# R 540.823 S 277.387 U 54.168 -# R 557.762 S 263.566 U 53.222 -# R 543.877 S 278.569 U 54.412 -# R 544.455 S 279.096 U 53.697 -# R 545.445 S 280.546 U 53.943 -# -# Notes: -# -# Kernel builds can be quite slow as example output above shows. Create your -# own .config file to build smaller kernel. -# -# - -OPTVAL=`getopt -o s:m:i:t:vc:SC:h -n 'kbuild' -- "$@"` || usage - -# Note the quotes around `$OPTVAL': they are essential! -eval set -- "$OPTVAL" - -LOG_CRIT=0 -LOG_ERROR=1 -LOG_WARN=2 -LOG_INFO=3 -LOG_PROGRESS=4 -LOG_TRACE=5 -LOG_ALL=6 -LOG_DEBUG=7 - -src=/usr/src/linux -tgt=/mnt/lustre -verbose=$LOG_CRIT - -pname=$(basename $0) - -mopt="" -mconfig=allyesconfig -it=3 -lfile=/tmp/$pname-tmp-log.$$ -skip_copy=0 -conf_file="" - -while : ;do - case "$1" in - -s) - src="$2" - shift 2 - ;; - -t) - tgt="$2" - shift 2 - ;; - -m) - mopt="$2" - shift 2 - ;; - -C) - conf_file="$2" - shift 2 - ;; - -i) - it="$2" - shift 2 - ;; - -c) - mconfig="$2" - shift 2 - ;; - -S) - skip_copy=1 - shift - ;; - -v) - verbose=$(($verbose + 1)) - shift - ;; - -h) - usage - ;; - --) - shift - break - ;; - *) - echo "Internal error!" - usage - ;; - esac -done - -[ $verbose -ge $LOG_ALL ] && set -x - - -function warning() -{ - echo WARNING $pname: $* -} - -function fail() -{ - local rc - - rc=$1 - shift - warning $* ... failing. - exit $rc -} - -function log() -{ - local level - - level=$1 - shift - if [ $verbose -ge $level ] ;then - echo $* - fi -} - -function doquiet() -{ - local cmd - - cmd="$*" - echo >> $lfile - echo ---- start: $(date +"%Y-%m-%d %H:%M:%S") ---- >> $lfile - for i in $cmd ;do - echo "ARG: $i" >> $lfile - done - log $LOG_PROGRESS "Running '$cmd'..." - $cmd >>$lfile 2>&1 || \ - fail 1 "Errors while running '$cmd'. See $lfile for transcript" - log $LOG_PROGRESS "Finished '$cmd'." - echo ---- done: $(date +"%Y-%m-%d %H:%M:%S") ---- >> $lfile -} - -function dotime() -{ - local cmd - - cmd="$*" - export TIMEFORMAT="R %3R S %3S U %3U" - time $cmd -} - -ccache_dir=$tgt/ccache_dir -cc_script=$tgt/cc_script - -which ccache >/dev/null || fail 2 "No ccache found" -mkdir -p $ccache_dir || fail 3 "Cannot create $ccache_dir" - -export CCACHE_DIR=$ccache_dir - -# start the stuff - -cd $tgt || fail 4 "Cannot cd into $tgt" - -echo '#! /bin/sh' > $cc_script || fail 5 "Cannot write into $cc_script" -echo 'ccache cc $*' >> $cc_script || fail 6 "Cannot append to $cc_script" -chmod u+rx $cc_script || fail 7 "Cannot chmod u+rx $cc_script" - -cc_opt="CC=$cc_script" - -[ $verbose -ge $LOG_TRACE ] && vopt=-v - -if [ $skip_copy -eq 0 ] ;then - case "$src" in - ftp://*|http://*) - wget -c $src - src=$(basename $src) - ;; - esac - - case "$src" in - */) - log $LOG_PROGRESS "Copying directory $src into $tgt" - cp -a$vopt "$src" . - ;; - *.tar.gz|*.tgz) - tar xzf "$src" $vopt - ;; - *.tar.bz2) - tar xjf "$src" $vopt - ;; - *) - fail 10 "No $src" - ;; - esac -fi - -cd linux-* || fail 20 "Cannot change to linux-* from $PWD" - -function dokernel() -{ - doquiet make $mopt mrproper - if [ x$conf_file = x ] ;then - doquiet make $mopt $mconfig - else - cp $conf_file .config - doquiet make $mopt oldconfig - fi - - dotime doquiet make $mopt $cc_opt bzImage modules -} - -log $LOG_PROGRESS Fill the cache... - -dokernel - -for i in $(seq 1 $it) ;do - log $LOG_PROGRESS Iteration $i... - dokernel -done diff --git a/lustre/tests/lkcdmap b/lustre/tests/lkcdmap deleted file mode 100755 index dbfd7f0..0000000 --- a/lustre/tests/lkcdmap +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -TMP=${TMP:-/tmp} -LCMD=$TMP/lkcd-cmds-`hostname` -echo "Storing LKCD module info in $LCMD" -cat /tmp/ogdb-`hostname` | while read JUNK M JUNK; do - MOD="../$M" - MODNAME="`basename $MOD .o`" - MAP="$TMP/$MODNAME.map" - - nm $MOD > $MAP - echo namelist -a $PWD/$MOD | tee -a $LCMD - echo symtab -a $MAP $MODNAME | tee -a $LCMD -done diff --git a/lustre/tests/llechocleanup.sh b/lustre/tests/llechocleanup.sh deleted file mode 100755 index 22d7550..0000000 --- a/lustre/tests/llechocleanup.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/sh - -LCONF=../utils/lconf -NAME=${NAME:-echo} -TMP=${TMP:-/tmp} - -config=$NAME.xml -mkconfig=$NAME.sh - -if [ ! -f $config ]; then - sh $mkconfig $config || exit 1 -fi - -${LCONF} --cleanup $NAME.xml - diff --git a/lustre/tests/lstiming.sh b/lustre/tests/lstiming.sh deleted file mode 100644 index 0b494e4..0000000 --- a/lustre/tests/lstiming.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/bash - -set -e - -PATH=$PATH:. - -CHECKSTAT=${CHECKSTAT:-"checkstat -v"} -MOUNT1=${MOUNT1:-/mnt/lustre1} -MOUNT2=${MOUNT2:-/mnt/lustre2} -DIRNAME=${DIRNAME:-"ls-timing"} -DIRSIZE=${DIRSIZE:-200} -export NAME=${NAME:-mount2} - -error () { - echo FAIL - exit 1 -} - -pass() { - echo PASS -} -echo "Mounting..." -mount | grep $MOUNT1 || sh llmount.sh - -echo -n "Preparing test directory with $DIRSIZE files..." -rm -rf "$MOUNT1/$DIRNAME" -rm -rf "$MOUNT2/$DIRNAME" -mkdir -p "$MOUNT1/$DIRNAME" -[ -d "$MOUNT2/$DIRNAME" ] || error -createmany -o $MOUNT1/$DIRNAME/file 0 $DIRSIZE &> /dev/null -echo "done" - -echo -n "Cached ls: " -time ls -lr $MOUNT1/$DIRNAME 1> /dev/null - -echo -n "Uncached ls: " -time ls -lr $MOUNT2/$DIRNAME 1> /dev/null - - -fsx $MOUNT1/$DIRNAME/fsx.file &>/dev/null & -fsxpid=$! - -echo -n "Cached busy ls:" -time ls -lr $MOUNT1/$DIRNAME 1> /dev/null - -echo -n "Uncached busy ls: " -time ls -lr $MOUNT2/$DIRNAME 1> /dev/null - -kill $fsxpid - -exit diff --git a/lustre/tests/mount2fs.sh b/lustre/tests/mount2fs.sh deleted file mode 100644 index 949f447..0000000 --- a/lustre/tests/mount2fs.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash -# -# Test case for 2 different filesystems mounted on the same client. -# Uses 3 umls - -config=${config:-`basename $0 .sh`.xml} -LMC=${LMC-../utils/lmc} -TMP=${TMP:-/tmp} - -MDSDEV=${MDSDEV:-$TMP/mds1-`hostname`} -MDSDEV2=${MDSDEV2:-$TMP/mds2-`hostname`} -MOUNT=${MOUNT:-/mnt/lustre} -MOUNT1=${MOUNT1:-$MOUNT} -MOUNT2=${MOUNT2:-${MOUNT}2} -MDSSIZE=50000 -FSTYPE=${FSTYPE:-ext3} - -STRIPE_BYTES=${STRIPE_BYTES:-1048576} -OSTDEV1=${OSTDEV1:-$TMP/ost1-`hostname`} -OSTDEV2=${OSTDEV2:-$TMP/ost2-`hostname`} -OSTSIZE=100000 - -MDSNODE=${MDSNODE:-uml1} -OSTNODE=${OSTNODE:-uml2} -CLIENT=${CLIENT:-client1} -CLIENT2=${CLIENT2:-client2} - -# create nodes -${LMC} -o $config --add net --node $MDSNODE --nid $MDSNODE --nettype tcp || exit 1 -${LMC} -m $config --add net --node $OSTNODE --nid $OSTNODE --nettype tcp || exit 2 -${LMC} -m $config --add net --node $CLIENT --nid '*' --nettype tcp || exit 3 -if [ "$CLIENT" != "$CLIENT2" ]; then - ${LMC} -m $config --add net --node $CLIENT2 --nid '*' --nettype tcp || exit 3 -fi - -# configure mds server -${LMC} -m $config --add mds --node $MDSNODE --mds mds1 --group fs1 --fstype $FSTYPE --dev $MDSDEV --size $MDSSIZE ||exit 10 -${LMC} -m $config --add mds --node $MDSNODE --mds mds2 --group fs2 --fstype $FSTYPE --dev $MDSDEV2 --size $MDSSIZE ||exit 10 - -# configure ost -${LMC} -m $config --add lov --lov lov1 --mds mds1 --stripe_sz $STRIPE_BYTES --stripe_cnt 0 --stripe_pattern 0 || exit 20 -${LMC} -m $config --add lov --lov lov2 --mds mds2 --stripe_sz $STRIPE_BYTES --stripe_cnt 0 --stripe_pattern 0 || exit 20 -${LMC} -m $config --add ost --node $OSTNODE --group fs1 --lov lov1 --fstype $FSTYPE --dev $OSTDEV1 --size $OSTSIZE || exit 21 -${LMC} -m $config --add ost --node $OSTNODE --group fs2 --lov lov2 --fstype $FSTYPE --dev $OSTDEV2 --size $OSTSIZE || exit 22 - -# create client config -${LMC} -m $config --add mtpt --node $CLIENT --path ${MOUNT1} --mds mds1 --lov lov1 || exit 30 -${LMC} -m $config --add mtpt --node $CLIENT2 --path ${MOUNT2} --mds mds2 --lov lov2 || exit 30 diff --git a/lustre/tests/recovery-cleanup.sh b/lustre/tests/recovery-cleanup.sh deleted file mode 100755 index c23a845..0000000 --- a/lustre/tests/recovery-cleanup.sh +++ /dev/null @@ -1,145 +0,0 @@ -#!/bin/sh - -set -ex - -LUSTRE=${LUSTRE:-`dirname $0`/..} -LTESTDIR=${LTESTDIR:-"$LUSTRE/../ltest"} -PATH=$PATH:$LUSTRE/utils:$LUSTRE/tests - -. $LTESTDIR/functional/llite/common/common.sh - -# Allow us to override the setup if we already have a mounted system by -# setting SETUP=" " and CLEANUP=" " -SETUP=${SETUP:-"setup"} -CLEANUP=${CLEANUP:-"cleanup"} - -PDSH='pdsh -S -w' - -# XXX I wish all this stuff was in some default-config.sh somewhere -MDSNODE=${MDSNODE:-mdev6} -OSTNODE=${OSTNODE:-mdev7} -CLIENT=${CLIENT:-mdev8} -NETTYPE=${NETTYPE:-tcp} -MOUNTPT=${MOUNTPT:-/mnt/lustre} -CONFIG=${CONFIG:-recovery-cleanup.xml} -MDSDEV=${MDSDEV:-/tmp/mds1-`hostname`} -MDSSIZE=${MDSSIZE:-100000} -FSTYPE=${FSTYPE:-ext3} -OSTDEV=${OSTDEV:-/tmp/ost1-`hostname`} -OSTSIZE=${OSTSIZE:-100000} -STRIPE_BYTES=${STRIPE_BYTES:-1048576} - -do_mds() { - $PDSH $MDSNODE "PATH=\$PATH:$LUSTRE/utils:$LUSTRE/tests; cd $PWD; $@" || exit $? -} - -do_client() { - $PDSH $CLIENT "PATH=\$PATH:$LUSTRE/utils:$LUSTRE/tests; cd $PWD; $@" || exit $? -} - -do_ost() { - $PDSH $OSTNODE "PATH=\$PATH:$LUSTRE/utils:$LUSTRE/tests; cd $PWD; $@" || exit $? -} - -drop_request() { - do_mds "echo 0x121 > /proc/sys/lustre/fail_loc" - do_client "$1 & sleep ${TIMEOUT:-5}; sleep 2; kill \$!" - do_mds "echo 0 > /proc/sys/lustre/fail_loc" -} - -make_config() { - rm -f $CONFIG - for NODE in $CLIENT $MDSNODE $OSTNODE; do - lmc -m $CONFIG --add net --node $NODE --nid `h2$NETTYPE $NODE` \ - --nettype $NETTYPE || exit 4 - done - lmc -m $CONFIG --add mds --node $MDSNODE --mds mds1 --fstype $FSTYPE \ - --dev $MDSDEV --size $MDSSIZE || exit 5 - lmc -m $CONFIG --add lov --lov lov1 --mds mds1 --stripe_sz $STRIPE_BYTES \ - --stripe_cnt 0 --stripe_pattern 0 || exit 6 - lmc -m $CONFIG --add ost --nspath /mnt/ost_ns --node $OSTNODE \ - --lov lov1 --dev $OSTDEV --size $OSTSIZE --fstype $FSTYPE || exit 7 - lmc -m $CONFIG --add mtpt --node $CLIENT --path $MOUNTPT \ - --mds mds1 --lov lov1 || exit 8 -} - -start_mds() { - do_mds "lconf $@ $CONFIG" -} - -shutdown_mds() { - do_mds "lconf $@ --cleanup $CONFIG" -} - -start_ost() { - do_ost "lconf $@ $CONFIG" -} - -shutdown_ost() { - do_ost "lconf $@ --cleanup $CONFIG" -} - -mount_client() { - do_client "lconf $@ $CONFIG" -} - -unmount_client() { - do_client "lconf $@ --cleanup $CONFIG" -} - -setup() { - make_config - start_mds ${REFORMAT:---reformat} - start_ost ${REFORMAT:---reformat} - mount_client --timeout=${TIMEOUT:-5} --lustre_upcall=/bin/true -} - -cleanup() { - do_mds "echo 0 > /proc/sys/lustre/fail_loc" - unmount_client $@ || exit 97 - shutdown_mds $@ || exit 98 - shutdown_ost $@ || exit 99 -} - -wait_for_timeout() { - # wait to make sure we enter recovery - # it'd be better if the upcall notified us somehow, I think - sleep $(( ${TIMEOUT:-5} + 2 )) -} - -try_to_cleanup() { - kill -INT $! - unmount_client --force --dump $TMP/recovery-cleanup-`hostname`.log - mount_client --timeout=${TIMEOUT:-5} --lustre_upcall=/bin/true -} - -if [ ! -z "$ONLY" ]; then - eval "$ONLY" - exit $? -fi - -$SETUP - -drop_request "mcreate /mnt/lustre/1" & wait_for_timeout -try_to_cleanup - -drop_request "tchmod 111 /mnt/lustre/2" & wait_for_timeout -try_to_cleanup - -drop_request "statone /mnt/lustre/2" & wait_for_timeout -try_to_cleanup - -do_client "cp /etc/inittab /mnt/lustre/inittab" -drop_request "cat /mnt/lustre/inittab > /dev/null" & wait_for_timeout -try_to_cleanup - -drop_request "mv /mnt/lustre/inittab /mnt/lustre/renamed" & wait_for_timeout -try_to_cleanup - -drop_request "mlink /mnt/lustre/renamed-again /mnt/lustre/link1" & wait_for_timeout -try_to_cleanup - -drop_request "munlink /mnt/lustre/link1" & wait_for_timeout -try_to_cleanup - -FORCE=--force $CLEANUP '--dump $TMP/recovery-cleanup-`hostname`.log' diff --git a/lustre/tests/routed.sh b/lustre/tests/routed.sh deleted file mode 100644 index dcd683c..0000000 --- a/lustre/tests/routed.sh +++ /dev/null @@ -1,156 +0,0 @@ -#!/bin/sh -vx - -set -e - -export PATH=`dirname $0`/../utils:$PATH - -config=${1:-`basename $0 .sh`.xml} - -BATCH=/tmp/lmc-batch.$$ -save_cmd() { - echo "$@" >> $BATCH -} - -LMC_REAL="${LMC:-lmc} -m $config" -LMC="save_cmd" - -TMP=${TMP:-/tmp} - -MOUNT=${MOUNT:-/mnt/lustre} - -STRIPE_BYTES=$((1024*1024)) -STRIPES_PER_OBJ=1 - -# specific journal size for the ost, in MB -JSIZE=${JSIZE:-0} -JARG="" -[ "$JSIZE" -gt 0 ] && JARG="--journal_size $JSIZE" - -MDSNODE=${MDSNODE:-srv1} -MDSDEV=${MDSDEV:-$TMP/mds1-$MDSNODE} -MDSSIZE=${MDSSIZE:-400000} -OSTNODES=${OSTNODES:-"srv2 srv3 srv2 srv3"} -OSTSIZE=${OSTSIZE:-150000} -# OSTDEVN will still override the device for OST N -OSTFAILOVER=${OSTFAILOVER:---failover} -ROUTERS=${ROUTERS:-"cli1 cli2"} -CLIENT_NETTYPE=elan -CLIENT_CLUSTER=${CLIENT_CLUSTER:-0x0000} -CLIENT_LO=${CLIENT_LO:-cli3} -CLIENT_HI=${CLIENT_HI:-cli4} -CLIENTS=${CLIENTS:-client} -SERVER_NETTYPE=tcp -SERVER_CLUSTER=${SERVER_CLUSTER:-0x1000} -FSNAME=fs1 - -h2tcp () { - case $1 in - client) echo '\*' ;; - *) echo $1 ;; - esac -} - -h2elan () { # assumes node names of the form fooN, where N is elan node ID - case $1 in - client) echo '\*' ;; - *) echo $1 | sed "s/[^0-9]*//" ;; - esac -} - -rm -f $config $BATCH - -# MDSNODE -echo; echo -n "adding MDS on: $MDSNODE" -eval "NODE$MDSNODE=y" -$LMC --add net --node $MDSNODE --nid `h2$SERVER_NETTYPE $MDSNODE` \ - --nettype $SERVER_NETTYPE --cluster_id $SERVER_CLUSTER -$LMC --add mds --node $MDSNODE --mds mds-$FSNAME --dev $MDSDEV $MDSOPT \ - --size $MDSSIZE -$LMC --add lov --lov lov-$FSNAME --mds mds-$FSNAME --stripe_sz $STRIPE_BYTES \ - --stripe_cnt $STRIPES_PER_OBJ --stripe_pattern 0 -# MDS route to elan client -for R in $ROUTERS; do - echo -n " [r=$R]" - $LMC --node $MDSNODE --add route --nettype $SERVER_NETTYPE \ - --gw `h2$CLIENT_NETTYPE $R` \ - --lo `h2$CLIENT_NETTYPE $CLIENT_LO` \ - --hi `h2$CLIENT_NETTYPE $CLIENT_HI` \ - --gateway_cluster_id $SERVER_CLUSTER \ - --target_cluster_id $SERVER_CLUSTER -done - -# OSTNODE -COUNT=1 -for OSTNODE in $OSTNODES; do - OST=ost$COUNT - eval OSTDEV=\$OSTDEV$COUNT - if [ -z "$OSTDEV" ]; then - eval OSTDEV=${!OSTDEV:=$TMP/$OST-$OSTNODE} - fi - DEV=`basename $OSTDEV` - echo; echo -n "adding OST on: $OSTNODE[$DEV]" - if [ "`eval echo \\$NODE$OSTNODE`" != "y" ]; then - $LMC --add net --node $OSTNODE --nid $OSTNODE \ - --nettype $SERVER_NETTYPE --cluster_id $SERVER_CLUSTER - # OST route to elan clients - for R in $ROUTERS; do - echo -n " [r=$R]" - $LMC --node $OSTNODE --add route \ - --nettype $SERVER_NETTYPE \ - --gw `h2$CLIENT_NETTYPE $R` \ - --lo `h2$CLIENT_NETTYPE $CLIENT_LO` \ - --hi `h2$CLIENT_NETTYPE $CLIENT_HI` \ - --gateway_cluster_id $SERVER_CLUSTER \ - --target_cluster_id $SERVER_CLUSTER - done - eval "NODE$OSTNODE=y" - fi - - $LMC --add ost --node $OSTNODE --ost ost-$FSNAME-$OSTNODE-$DEV \ - --lov lov-$FSNAME $OSTFAILOVER --dev $OSTDEV --size $OSTSIZE \ - $OSTOPT - COUNT=`expr $COUNT + 1` -done - -# ROUTER -echo; echo -n "adding ROUTER on: " -for ROUTER in $ROUTERS; do - echo -n " $ROUTER" - $LMC --node $ROUTER --add net --nid `h2$CLIENT_NETTYPE $ROUTER` \ - --cluster_id $SERVER_CLUSTER --nettype $SERVER_NETTYPE \ - --hostaddr $ROUTER --router - $LMC --node $ROUTER --add net --nid `h2$CLIENT_NETTYPE $ROUTER` \ - --cluster_id $CLIENT_CLUSTER --nettype $CLIENT_NETTYPE \ - --router - # ROUTER route to OSTs and MDS - for NODE in `echo $MDSNODE $OSTNODES | tr -s " " "\n" | sort -u`; do - $LMC --node $ROUTER --add route \ - --nettype $SERVER_NETTYPE \ - --gw `h2$CLIENT_NETTYPE $ROUTER` \ - --lo `h2$SERVER_NETTYPE $NODE` \ - --gateway_cluster_id $SERVER_CLUSTER \ - --target_cluster_id $SERVER_CLUSTER - done - # ROUTER route to clients - $LMC --node $ROUTER --add route --nettype $CLIENT_NETTYPE \ - --gw `h2$CLIENT_NETTYPE $ROUTER` \ - --lo `h2$CLIENT_NETTYPE $CLIENT_LO` \ - --hi `h2$CLIENT_NETTYPE $CLIENT_HI` \ - --gateway_cluster_id $CLIENT_CLUSTER \ - --target_cluster_id $CLIENT_CLUSTER -done - -# CLIENT -echo; echo -n "adding CLIENT on: " -for CLIENT in $CLIENTS; do - echo -n " $CLIENT" - $LMC --node $CLIENT --add net --nid `h2$CLIENT_NETTYPE $CLIENT` \ - --cluster_id $CLIENT_CLUSTER --nettype $CLIENT_NETTYPE - $LMC --node $CLIENT --add mtpt --path $MOUNT --mds mds-$FSNAME \ - --lov lov-$FSNAME $CLIENTOPT -done -echo - -set -vx -echo "generating config $config from $BATCH" -$LMC_REAL --batch $BATCH diff --git a/lustre/tests/run-quotacheck.sh b/lustre/tests/run-quotacheck.sh deleted file mode 100644 index 85c5b79..0000000 --- a/lustre/tests/run-quotacheck.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash -PATH=`dirname $0`:`dirname $0`/../utils:$PATH -TMP=${TMP:-/tmp} - -OBD=${1:-obdfilter} -TARGET=`ls /proc/fs/lustre/$OBD | grep -v num_refs | head -n 1` -[ -z "$TARGET" ] && echo "no TARGET available, skipping quotacheck test" && exit 0 - -insmod ../lvfs/quotacheck_test.ko || exit 1 -lctl modules > $TMP/ogdb-`hostname` -echo "NOW reload debugging syms.." - -RC=0 -lctl < $TMP/ogdb-`hostname` -echo "NOW reload debugging syms.." - -RC=0 -lctl < $TMP/ogdb-`hostname` -echo "NOW reload debugging syms.." - -RC=0 -lctl < /dev/null - $DSH $TARGET "dmesg -c > /dev/null" || exit 1 - return 0 -} - -run_test() { - $DSH $TARGET "cd $LUSTRE_SRC/tests && PATH=/sbin:/usr/sbin:\$PATH NAME=$CONFIG_NAME sh llmount.sh 2>&1" | dshbak -c >> $LOG - if ! [ $? = 0 ] ; then - echo "Can not mount lustre on remoute machine: $TARGET " - exit 2 - fi - if [ $NO_SHARED_FS ]; then - $SCP $TARGET:$LUSTRE_SRC/tests/${CONFIG_NAME}.xml $PWD/config.xml - if ! [ $? = 0 ] ; then - echo "Can not get the config file from remoute machine: $TARGET " - exit 3 - fi - fi - - COMMAND="cd $LUSTRE_SRC/tests && NAME=$CONFIG_NAME PATH=/sbin:/usr/sbin:\$PATH $EXTRA_PARAMS sh $TESTSCRIPT" - echo >> $LOG;echo "COMMAND: $COMMAND" >> $LOG;echo >> $LOG - - $DSH $TARGET "$COMMAND 2>&1" | dshbak -c >> $LOG - return $? -} - -do_eval() { - RC=$1 - - if [ $RC -eq 0 ]; then - RESULT="pass" - else - RESULT="fail" - fi - - if [ "$RESULT" = "fail" ] ; then - $DSH $TARGET "dmesg" | dshbak -c >> $DMESGLOG - fi -} - -send_report() { - . $LTESTDIR/acceptance/harness/config/common/buffalo.sh - - if [ $NO_SHARED_FS ]; then - CONFIG="$PWD/config.xml" - else - CONFIG="${LUSTRE_SRC}/tests/${CONFIG_NAME}.xml" - fi - CONFIGDESC=${CONFIGDESC:-"${TARGET}-${CONFIG_NAME}"} - - ### send buffalo reports - echo "Sending buffalo report..." - rm -fr $OUTPUT - buffalo_format_result > $OUTPUT - buffalo_format_config $CONFIG >> $OUTPUT - buffalo_format_log $LOG >> $OUTPUT - buffalo_format_dmesg $DMESGLOG >> $OUTPUT - buffalo_send_report $OUTPUT - rm -f $OUTPUT - rm -f $DMESGLOG - rm -f $LOG - echo "done." -} - -do_cleanup() { - $DSH $TARGET "cd $LUSTRE_SRC/tests && NAME=$CONFIG_NAME sh llmountcleanup.sh 2>&1" | dshbak -c >> $LOG - if ! [ $? = 0 ] ; then - echo "failed to clean up lustre" - fi -} - -options=`getopt -o h --long extra-params:,target:,sender:,config:,test:,help -- "$@"` - -if [ $? -ne 0 ] ; then - usage -fi -eval set -- "$options" -while true - do - case "$1" in - --config) - CONFIG_NAME=$2 - shift 2 ;; - --sender) - SENDER=$2 - shift 2 ;; - --target) - TARGET=$2 - shift 2 ;; - --extra-params) - EXTRA_PARAMS=$2 - shift 2 ;; - --test) - TESTSCRIPT=$2 - shift 2 ;; - --help) - usage -h ;; - -h) - usage -h ;; - --) - shift - break ;; - esac -done - -if [ ! -d ${LUSTRE_SRC} ]; then - echo "LUSTRE_SRC dir $LUSTRE_SRC doesn't exist" - exit 1 -fi - -if [ ! -d ${LTESTDIR} ]; then - echo "LTESTDIR dir $LTESTDIR doesn't exist" - exit 2 -fi - -# Gather some buffalo variable before we run the test. -export KERNEL=`$DSH $TARGET uname -r | sed "s/^.*\ //g"` -export LUSTRE_BUILD=`${LUSTRE_SRC}/utils/lctl lustre_build_version 2>/dev/null|grep "^lctl" | awk '/^lctl/ {print $3}'` - -check_mail && check_config && check_test - -do_prepare -run_test -do_eval $? -do_cleanup - -send_report - -exit 0 - - diff --git a/lustre/tests/sanity.sh b/lustre/tests/sanity.sh index da89b09..764e413 100644 --- a/lustre/tests/sanity.sh +++ b/lustre/tests/sanity.sh @@ -1074,11 +1074,12 @@ test_27u() { # bug 4900 createmany -o $DIR/d27u/t- 1000 sysctl -w lustre.fail_loc=0 - $GETSTRIPE $DIR/d27u > $TMP/files - OBJS=`cat $TMP/files | awk -vobjs=0 '($1 == 0) { objs += 1 } END { print objs;}'` + TLOG=$DIR/$tfile.getstripe + $GETSTRIPE $DIR/d27u > $TLOG + OBJS=`awk -vobj=0 '($1 == 0) { obj += 1 } END { print obj;}' $TLOG` unlinkmany $DIR/d27u/t- 1000 [ $OBJS -gt 0 ] && \ - error "Found $OBJS objects were created on OST-0" || pass + error "$OBJS objects created on OST-0. See $TLOG" || pass } run_test 27u "skip object creation on OSC w/o objects ==========" diff --git a/lustre/tests/tmpfs-sanity.sh b/lustre/tests/tmpfs-sanity.sh deleted file mode 100755 index 718fa81..0000000 --- a/lustre/tests/tmpfs-sanity.sh +++ /dev/null @@ -1,149 +0,0 @@ -#!/bin/bash - -fail() -{ - echo "ERROR: $@" - exit 1 -} - -check_xattr() -{ - name=$1 - value=$2 - file="$3" - - if test "x$value" != "x"; then - res=`$getattr -n $name $file 2>/dev/null | grep -v "^#" | sed 's/\"//g'` - - if test "x$res" = "x$name=$value"; then - return 0 - else - return 1 - fi - else - res=`$getattr -d -m ".*" $file 2>/dev/null | grep -v "^#" | sed 's/\"//g'` - - if echo $res | grep $name > /dev/null 2>&1; then - return 1 - else - return 0 - fi - fi -} - -test_del_xattr() -{ - name=$1 - file=$2 - message=$3 - - echo -n "$message..." - `$setattr -x $name $file 2> /dev/null` - - if test "x$?" != "x0"; then - echo "failed" - return 1 - else - check_xattr $name "" $file && echo "done" || echo "failed" - return 0 - fi -} - -test_set_xattr() -{ - name=$1 - value=$2 - file=$3 - message=$4 - - echo -n "$message..." - `$setattr -n $name -v $value $file 2>/dev/null` - - if test "x$?" != "x0"; then - echo "failed" - return 1 - else - check_xattr $name $value $file && echo "done" || echo "failed" - return 0 - fi -} - -test_list_xattr() -{ - file=$1 - message=$2 - - echo -n "$message..." - `$setattr -n list_name0 -v list_value0 $file 2>/dev/null` || { - echo "failed" - return 1 - } - - `$setattr -n list_name1 -v list_value1 $file 2>/dev/null` || { - echo "failed" - return 1 - } - - `$setattr -n list_name2 -v list_value2 $file 2>/dev/null` || { - echo "failed" - return 1 - } - - values=`$getattr -d -m ".*" $file 2>/dev/null | grep -v "^#" | \ -grep list_name | sed 's/\"//g'` - - i=0 - - for chunk in $values; do - if test "x$chunk" != "xlist_name$i=list_value$i"; then - echo "failed" - return 1 - fi - - let i=$i+1 - done - - echo "done" - return 0 -} - -# check each function related to xattrs -test_individual() -{ - file="$1" - - test_set_xattr test_name0 test_value0 $file "Create new attribute" && - test_set_xattr test_name0 test_value012345 $file "Expanding attribute" && - test_set_xattr test_name0 test_value0123 $file "Shrinking attribute" && - test_del_xattr test_name0 $file "Delete attribute" - test_list_xattr $file "Getting list of attributes" -} - -# checking xattr code as a whole. Not implemented yet. -test_composite() -{ - return 0 -} - -getattr=$(which getfattr 2>/dev/null) -setattr=$(which setfattr 2>/dev/null) - -if test "x$getattr" = "x" -o "x$setattr" = "x"; then - fail "Can't find getfattr or setfattr utilities in current path." -fi - -if ! mount | grep tmpfs > /dev/null 2>&1; then - fail "tmpfs is not mounted" -fi - -mntpoint=$(mount | grep tmpfs | awk '{print $3}') - -if test "x$mntpoint" = "x"; then - fail "Can't find tmpfs mount point" -fi - -rm -fr $mntpoint/test_file0 2> /dev/null -touch "$mntpoint/test_file0" - -test_individual "$mntpoint/test_file0" && -test_composite "$mntpoint/test_file0" && echo "All tests passed" -- 1.8.3.1