Whamcloud - gitweb
121ad7598ce807790b75bbff87ccd90964146dfe
[fs/lustre-release.git] / lustre / tests / cfg / local.sh
1 FSNAME=${FSNAME:-lustre}
2
3 # facet hosts
4 mds_HOST=${mds_HOST:-`hostname`}
5 mdsfailover_HOST=${mdsfailover_HOST}
6 mds1_HOST=${mds1_HOST:-$mds_HOST}
7 mds1failover_HOST=${mds1failover_HOST:-$mdsfailover_HOST}
8 mgs_HOST=${mgs_HOST:-$mds1_HOST}
9 ost_HOST=${ost_HOST:-`hostname`}
10 ostfailover_HOST=${ostfailover_HOST}
11 CLIENTS=""
12
13 TMP=${TMP:-/tmp}
14
15 DAEMONSIZE=${DAEMONSIZE:-500}
16 MDSCOUNT=${MDSCOUNT:-1}
17 [ $MDSCOUNT -gt 4 ] && MDSCOUNT=4
18 [ $MDSCOUNT -gt 1 ] && IAMDIR=yes
19 for num in $(seq $MDSCOUNT); do
20     eval mds${num}_HOST=\$\{mds${num}_HOST:-$mds_HOST\}
21     eval mds${num}failover_HOST=\$\{mds${num}failover_HOST:-$mdsfailover_HOST\}
22 done
23 MDSDEVBASE=${MDSDEVBASE:-$TMP/${FSNAME}-mdt}
24 MDSSIZE=${MDSSIZE:-200000}
25 MDSOPT=${MDSOPT:-"--mountfsoptions=user_xattr"}
26
27 MGSDEV=${MGSDEV:-$MDSDEV1}
28 MGSSIZE=${MGSSIZE:-$MDSSIZE}
29
30 OSTCOUNT=${OSTCOUNT:-2}
31 OSTDEVBASE=${OSTDEVBASE:-$TMP/${FSNAME}-ost}
32 OSTSIZE=${OSTSIZE:-200000}
33 OSTOPT=""
34 # Can specify individual ost devs with
35 # OSTDEV1="/dev/sda"
36 # on specific hosts with
37 # ost1_HOST="uml2"
38
39 NETTYPE=${NETTYPE:-tcp}
40 MGSNID=${MGSNID:-`h2$NETTYPE $mgs_HOST`}
41 FSTYPE=${FSTYPE:-ldiskfs}
42 STRIPE_BYTES=${STRIPE_BYTES:-1048576}
43 STRIPES_PER_OBJ=${STRIPES_PER_OBJ:-0}
44 SINGLEMDS=${SINGLEMDS:-"mds1"}
45 TIMEOUT=${TIMEOUT:-20}
46 PTLDEBUG=${PTLDEBUG:-"vfstrace rpctrace dlmtrace neterror ha config ioctl super"}
47 SUBSYSTEM=${SUBSYSTEM:-"all -lnet -lnd -pinger"}
48
49 # promise 2MB for every cpu
50 if [ -f /sys/devices/system/cpu/possible ]; then
51     _debug_mb=$((($(cut -d "-" -f 2 /sys/devices/system/cpu/possible)+1)*2))
52 else
53     _debug_mb=$(($(getconf _NPROCESSORS_CONF)*2))
54 fi
55
56 DEBUG_SIZE=${DEBUG_SIZE:-$_debug_mb}
57
58 ENABLE_QUOTA=${ENABLE_QUOTA:-""}
59 QUOTA_TYPE="ug3"
60 QUOTA_USERS=${QUOTA_USERS:-"quota_usr quota_2usr sanityusr sanityusr1"}
61 LQUOTAOPTS=${LQUOTAOPTS:-"hash_lqs_cur_bits=3"}
62
63 MKFSOPT=""
64 [ "x$MDSJOURNALSIZE" != "x" ] &&
65     MKFSOPT=$MKFSOPT" -J size=$MDSJOURNALSIZE"
66 [ "x$MDSISIZE" != "x" ] &&
67     MKFSOPT=$MKFSOPT" -i $MDSISIZE"
68 [ "x$MKFSOPT" != "x" ] &&
69     MKFSOPT="--mkfsoptions=\\\"$MKFSOPT\\\""
70 [ "x$SECLEVEL" != "x" ] &&
71     MKFSOPT=$MKFSOPT" --param mdt.sec_level=$SECLEVEL"
72 [ "x$MDSCAPA" != "x" ] &&
73     MKFSOPT=$MKFSOPT" --param mdt.capa=$MDSCAPA"
74 [ "x$mdsfailover_HOST" != "x" ] &&
75     MDSOPT=$MDSOPT" --failnode=`h2$NETTYPE $mdsfailover_HOST`"
76 [ "x$STRIPE_BYTES" != "x" ] &&
77     MDSOPT=$MDSOPT" --param lov.stripesize=$STRIPE_BYTES"
78 [ "x$STRIPES_PER_OBJ" != "x" ] &&
79     MDSOPT=$MDSOPT" --param lov.stripecount=$STRIPES_PER_OBJ"
80 [ "x$L_GETIDENTITY" != "x" ] &&
81     MDSOPT=$MDSOPT" --param mdt.identity_upcall=$L_GETIDENTITY"
82
83 MDS_MKFS_OPTS="--mdt --fsname=$FSNAME --device-size=$MDSSIZE --param sys.timeout=$TIMEOUT $MKFSOPT $MDSOPT $MDS_MKFS_OPTS"
84 if [[ $mds1_HOST == $mgs_HOST ]] && [[ $MDSDEV1 == $MGSDEV ]]; then
85     MDS_MKFS_OPTS="--mgs $MDS_MKFS_OPTS"
86 else
87     MDS_MKFS_OPTS="--mgsnode=$MGSNID $MDS_MKFS_OPTS"
88     MGS_MKFS_OPTS="--mgs --device-size=$MGSSIZE"
89 fi
90
91 MKFSOPT=""
92 [ "x$OSTJOURNALSIZE" != "x" ] &&
93     MKFSOPT=$MKFSOPT" -J size=$OSTJOURNALSIZE"
94 [ "x$MKFSOPT" != "x" ] &&
95     MKFSOPT="--mkfsoptions=\\\"$MKFSOPT\\\""
96 [ "x$SECLEVEL" != "x" ] &&
97     MKFSOPT=$MKFSOPT" --param ost.sec_level=$SECLEVEL"
98 [ "x$OSSCAPA" != "x" ] &&
99     MKFSOPT=$MKFSOPT" --param ost.capa=$OSSCAPA"
100 [ "x$ostfailover_HOST" != "x" ] &&
101     OSTOPT=$OSTOPT" --failnode=`h2$NETTYPE $ostfailover_HOST`"
102 OST_MKFS_OPTS="--ost --fsname=$FSNAME --device-size=$OSTSIZE --mgsnode=$MGSNID --param sys.timeout=$TIMEOUT $MKFSOPT $OSTOPT $OST_MKFS_OPTS"
103
104 MDS_MOUNT_OPTS=${MDS_MOUNT_OPTS:-"-o loop,user_xattr"}
105 OST_MOUNT_OPTS=${OST_MOUNT_OPTS:-"-o loop"}
106 MGS_MOUNT_OPTS=${MGS_MOUNT_OPTS:-$MDS_MOUNT_OPTS}
107
108 #client
109 MOUNT=${MOUNT:-/mnt/${FSNAME}}
110 MOUNT1=${MOUNT1:-$MOUNT}
111 MOUNT2=${MOUNT2:-${MOUNT}2}
112 MOUNTOPT=${MOUNTOPT:-"-o user_xattr,flock"}
113 DIR=${DIR:-$MOUNT}
114 DIR1=${DIR:-$MOUNT1}
115 DIR2=${DIR2:-$MOUNT2}
116
117 if [ $UID -ne 0 ]; then
118         log "running as non-root uid $UID"
119         RUNAS_ID="$UID"
120         RUNAS_GID=`id -g $USER`
121         RUNAS=""
122 else
123         RUNAS_ID=${RUNAS_ID:-500}
124         RUNAS_GID=${RUNAS_GID:-$RUNAS_ID}
125         RUNAS=${RUNAS:-"runas -u $RUNAS_ID -g $RUNAS_GID"}
126 fi
127
128 PDSH=${PDSH:-no_dsh}
129 FAILURE_MODE=${FAILURE_MODE:-SOFT} # or HARD
130 POWER_DOWN=${POWER_DOWN:-"powerman --off"}
131 POWER_UP=${POWER_UP:-"powerman --on"}
132 SLOW=${SLOW:-no}
133 FAIL_ON_ERROR=${FAIL_ON_ERROR:-true}
134
135 MPIRUN=$(which mpirun 2>/dev/null) || true
136 MPI_USER=${MPI_USER:-mpiuser}
137 SHARED_DIR_LOGS=${SHARED_DIR_LOGS:-""}
138
139 # This is used by a small number of tests to share state between the client
140 # running the tests, or in some cases between the servers (e.g. lfsck.sh).
141 # It needs to be a non-lustre filesystem that is available on all the nodes.
142 SHARED_DIRECTORY=${SHARED_DIRECTORY:-""}        # bug 17839 comment 65