[BACK]Return to common.config CVS log [TXT][DIR] Up to [Development] / xfs-cmds / xfstests

File: [Development] / xfs-cmds / xfstests / common.config (download)

Revision 1.32, Thu May 22 04:16:45 2003 UTC (14 years, 5 months ago) by fsgqa
Branch: MAIN
Changes since 1.31: +5 -3 lines

Numerous changes to QA scripts allowing tests to run with external log/rt devices; also allow multiple mkfs/mount options at once now.

##/bin/sh

#
# Copyright (c) 2000-2003 Silicon Graphics, Inc.  All Rights Reserved.
# 
# This program 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.
# 
# This program is distributed in the hope that it would be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# 
# Further, this software is distributed without any warranty that it is
# free of the rightful claim of any third person regarding infringement
# or the like.  Any license provided herein, whether implied or
# otherwise, applies only to this software file.  Patent licenses, if
# any, provided herein do not apply to combinations of this program with
# other software, or any other product whatsoever.
# 
# You should have received a copy of the GNU General Public License along
# with this program; if not, write the Free Software Foundation, Inc., 59
# Temple Place - Suite 330, Boston MA 02111-1307, USA.
# 
# Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
# Mountain View, CA  94043, or:
# 
# http://www.sgi.com 
# 
# For further information regarding this notice, see: 
# 
# http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
#

#
# setup and check for config parameters, and in particular
#
# TEST_DIR		- scratch test directory that is in an already
#		  	  mounted XFS file system, needs to be be world
#			  writeable
# TEST_DEV		- device for file system containing TEST_DIR
# SCRATCH_DEV	        - device you can make a scratch file system on
# SCRATCH_MNT	        - mount point for scratch file system
# 
# and optionally:
# SCRATCH_LOGDEV	- scratch log device for external log testing
# SCRATCH_RTDEV	        - scratch rt dev
# TEST_LOGDEV		- test log device for external log testing
# TEST_RTDEV	        - test rt dev
# TAPE_DEV		- the tape device for the xfsdump tests
# RMT_TAPE_DEV		- the remote tape device for the xfsdump tests
# RMT_IRIXTAPE_DEV	- the IRIX remote tape device for the xfsdump tests
# RMT_TAPE_USER		- remote user for tape device
#

#
# - This script is shared by the stress test system and the auto-qa
#   system (includes both regression test and benchmark components).
# - TEST_DEV & TEST_DIR must be assigned.
# - this script shouldn't make any assertions about filesystem
#   validity or mountedness.
#

HOST=`hostname -s`
MODULAR=0		# using XFS as a module or not
BOOT="/boot"		# install target for kernels
export EXTRA=${EXTRA:=-xfs-qa}

# general parameters (mainly for auto-qa)
SOAK_PROC=3		# -p option to fsstress
SOAK_STRESS=10000	# -n option to fsstress
SOAK_PASSES=-1		# count of repetitions of fsstress (while soaking)
EMAIL=root@localhost	# where auto-qa will send its status messages
export MKFS_OPTIONS=${MKFS_OPTIONS:=-bsize=4096}
export MOUNT_OPTIONS=${MOUNT_OPTIONS:=-ologbufs=2}
export CHECK_OPTIONS=${CHECK_OPTIONS:="-g auto"}
export BENCH_PASSES=${BENCH_PASSES:=5}

export DEBUG=${DEBUG:=-DEXPERIMENTAL_LARGE_SECTORS}
export MALLOCLIB=${MALLOCLIB:=/usr/lib/libefence.a}
export LOCAL_CONFIGURE_OPTIONS=${LOCAL_CONFIGURE_OPTIONS:=--enable-readline=yes}

case "$HOST"
in
    bruce)
	MODULAR=0
	EMAIL="nathans@larry"
	SCRATCH_MNT=/mnt/xfs0
	SCRATCH_DEV=/dev/sdb5
	#SCRATCH_RTDEV=/dev/sda9
	SCRATCH_LOGDEV=/dev/sda11
	TEST_DIR=/mnt/xfs1
        TEST_DEV=/dev/sda10
	TAPE_DEV=/dev/st0
	RMT_TAPE_DEV=bruce:/dev/st0
	RMT_IRIXTAPE_DEV=snort:/dev/tape
	RMT_TAPE_USER=guest
	;;
    sherman)
	TEST_DEV=/dev/sda10
	TEST_DIR=/mnt/xfs1
	SCRATCH_DEV=/dev/sda9
	SCRATCH_MNT=/mnt/xfs0
        ;;
    sagan)
	MODULAR=1
	EMAIL="tes@larry"
        TEST_DEV=/dev/sda6
	TEST_DIR=/mnt/xfs0
	SCRATCH_DEV=/dev/sda7
	SCRATCH_MNT=/mnt/xfs1
	TAPE_DEV=/dev/st0
	RMT_TAPE_DEV=sagan:/dev/st0
	RMT_IRIXTAPE_DEV=snort:/dev/tape
	RMT_TAPE_USER=guest
	;;
    frodo)
	MODULAR=0
	EMAIL="nathans@larry"
        TEST_DEV=/dev/hda6
	TEST_DIR=/mnt/test
        SCRATCH_DEV=/dev/hda7
	SCRATCH_MNT=/mnt/scratch
        SCRATCH_LOGDEV=/dev/hda9
	;;
    goldfish)
	MODULAR=0
	TEST_DEV=/dev/hdc1
	TEST_DIR=/mnt/xfs0
	SCRATCH_DEV=/dev/hdc2
	SCRATCH_MNT=/mnt/xfs1
	SCRATCH_LOGDEV=/dev/hdc3
	;;
    lord)
	TEST_DIR=/xfs
	TEST_DEV=/dev/sda5
	SCRATCH_DEV=/dev/hda7
	SCRATCH_LOGDEV=/dev/sda6
	SCRATCH_MNT=/xfs1
	;;
    burst)
	TEST_DIR=/xfs
	TEST_DEV=/dev/hda3
	SCRATCH_DEV=/dev/hda7
	SCRATCH_MNT=/scratch
	;;
    lumpy)
	TEST_DEV=/dev/sdc5
	TEST_DIR=/mnt/scratch_0
	SCRATCH_DEV=/dev/sdc7
	SCRATCH_MNT=/mnt/scratch_2
	;;
    bongo)
	TEST_DEV=/dev/hda8
	TEST_DIR=/xfs1
	SCRATCH_DEV=/dev/hda9
	SCRATCH_MNT=/xfs2
	SCRATCH_LOGDEV=/dev/hda10
	SCRATCH_RTDEV=/dev/hda11
	;;
    surly)
        TEST_DEV=/dev/hda9
	TEST_DIR=/mnt/xfs1
	SCRATCH_DEV=/dev/hda8
	SCRATCH_MNT=/mnt/xfs0
	SCRATCH_LOGDEV=/dev/hda10
	TAPE_DEV=/dev/st0
	RMT_TAPE_DEV=fuzzy:/dev/st0
	RMT_IRIXTAPE_DEV=blub:/dev/tape
	RMT_TAPE_USER=guest
	;;
    permit)
	TEST_DEV=/dev/sdc1
	TEST_DIR=/mnt/xfs0
	SCRATCH_DEV=/dev/sdd1
	SCRATCH_MNT=/mnt/xfs1
	;;
    indra)
    	TEST_DEV=/dev/sdb1
	TEST_DIR=/mnt/xfs0
	SCRATCH_DEV=/dev/sdb2
	SCRATCH_MNT=/mnt/xfs1
	;;
    usermode)
    	TEST_DEV=/dev/ubd/1
	TEST_DIR=/mnt/test
	SCRATCH_DEV=/dev/ubd/2
	SCRATCH_MNT=/mnt/scratch
	SCRATCH_RTDEV=/dev/ubd/3
	SCRATCH_LOGDEV=/dev/ubd/4
	;;
    lite)
	TEST_DEV=/dev/sda1
	TEST_DIR=/mnt/sda1
	SCRATCH_DEV=/dev/sda2
	SCRATCH_MNT=/mnt/sda2
	SCRATCH_LOGDEV=/dev/sda3
	;;
    dmfnt2)
        TEST_DEV=/dev/sda6
	TEST_DIR=/mnt/test
	SCRATCH_DEV=/dev/sdc6
	SCRATCH_MNT=/mnt/scratch
	TAPE_DEV=/dev/st0
	RMT_TAPE_DEV=longhorn:/dev/tape
#	RMT_IRIXTAPE_DEV=longhorn:/dev/tape
	RMT_TAPE_USER=guest
	;;
    lab343)
	MODULAR=0
	EMAIL="hch@sgi.com"
	TEST_DEV=/dev/sdb1
	SCRATCH_DEV=/dev/sdb2
	SCRATCH_LOGDEV=/dev/sdb5
	SCRATCH_RTDEV=/dev/sdb6
	TEST_DIR=/qa/test
	SCRATCH_MNT=/qa/scratch
	;;
    *)
	echo "common.config: Error: need to define parameters for host $HOST"
	exit 1
	;;
esac

if [ ! -b "$TEST_DEV" ]
then
    echo "common.config: Error: \$TEST_DEV ($TEST_DEV) is not a block device"
    exit 1
fi

if [ ! -d "$TEST_DIR" ]
then
    echo "common.config: Error: \$TEST_DIR ($TEST_DIR) is not a directory"
    exit 1
fi

if [ ! -z "$SCRATCH_DEV" -a ! -b "$SCRATCH_DEV" ]
then
    echo "common.config: Error: \$SCRATCH_DEV ($SCRATCH_DEV) is not a block device"
    exit 1
fi

if [ ! -z "$SCRATCH_DEV" -a ! -d "$SCRATCH_MNT" ]
then
    echo "common.config: Error: \$SCRATCH_MNT ($SCRATCH_MNT) is not a directory"
    exit 1
fi

_readlink()
{
    if [ $# -ne 1 ]
    then
	echo "Usage: _readlink filename" 1>&2
	exit 1
    fi

    perl -e "\$in=\"$1\";" -e '
	$lnk = readlink($in);
	if ($lnk =~ m!^/.*!) {
	  print "$lnk\n";
	}
	else {
	  chomp($dir = `dirname $in`);
	  print "$dir/$lnk\n";
	}'
}

# if devfs is running expand the full /dev/.. pathname - this is what will be
# returned by utilities such as mount
[ -L "$TEST_DEV" ] && TEST_DEV=`_readlink $TEST_DEV`
[ -L "$SCRATCH_DEV" ] && SCRATCH_DEV=`_readlink $SCRATCH_DEV`
[ -L "$SCRATCH_LOGDEV" ] && SCRATCH_LOGDEV=`_readlink $SCRATCH_LOGDEV`
[ -L "$SCRATCH_RTDEV" ] && SCRATCH_RTDEV=`_readlink $SCRATCH_LOGDEV`

# make sure this script returns success
/bin/true