#!/bin/bash
-# vim:expandtab:shiftwidth=4:softtabstop=4:tabstop=4:
+# -*- mode: Bash; tab-width: 4; indent-tabs-mode: t; -*-
+# vim:shiftwidth=4:softtabstop=4:tabstop=4:
trap 'print_summary && touch $TF_FAIL && \
echo "test-framework exiting on error"' ERR
load_module obdclass/obdclass
load_module ptlrpc/ptlrpc
load_module ptlrpc/gss/ptlrpc_gss
- [ "$USE_QUOTA" = "yes" -a "$LQUOTA" != "no" ] && load_module quota/lquota $LQUOTAOPTS
load_module fld/fld
load_module fid/fid
load_module lmv/lmv
{ modprobe exportfs 2> /dev/null || true; }
load_module ../ldiskfs/ldiskfs/ldiskfs
fi
+ [ "$USE_QUOTA" = "yes" -a "$LQUOTA" != "no" ] && load_module quota/lquota $LQUOTAOPTS
load_module mgs/mgs
load_module mds/mds
load_module mdd/mdd
load_module cmm/cmm
load_module osd-ldiskfs/osd_ldiskfs
load_module ost/ost
- load_module obdfilter/obdfilter
+ if [ "x$USE_OFD" = "xyes" ]; then
+ load_module ofd/ofd
+ else
+ load_module obdfilter/obdfilter
+ fi
fi
# Facet functions
mount_facets () {
- local facets=${1:-$(get_facets)}
- local facet
+ local facets=${1:-$(get_facets)}
+ local facet
- for facet in ${facets//,/ }; do
- mount_facet $facet || error "Restart of $facet failed!"
- done
+ for facet in ${facets//,/ }; do
+ mount_facet $facet
+ local RC=$?
+ [ $RC -eq 0 ] && continue
+
+ if [ "$TESTSUITE.$TESTNAME" = "replay-dual.test_0a" ]; then
+ skip "Restart of $facet failed!." && touch $LU482_FAILED
+ else
+ error "Restart of $facet failed!"
+ fi
+ return $RC
+ done
}
mount_facet() {
echo "Starting ${facet}: ${!opt} $@ ${!dev} $mntpt"
do_facet ${facet} "mkdir -p $mntpt; mount -t lustre ${!opt} $@ ${!dev} $mntpt"
RC=${PIPESTATUS[0]}
+ # to allow testing LU-482 error handling in mount_facets() and test_0a()
+ [ -f $TMP/test-lu482-trigger ] && RC=2
if [ $RC -ne 0 ]; then
echo "mount -t lustre $@ ${!dev} $mntpt"
echo "Start of ${!dev} on ${facet} failed ${RC}"
# the value depends on configure options, and it is not stored in /proc.
# obd_support.h:
# #define CONNECTION_SWITCH_MIN 5U
-# #ifndef CRAY_XT3
# #define INITIAL_CONNECT_TIMEOUT max(CONNECTION_SWITCH_MIN,obd_timeout/20)
-# #else
-# #define INITIAL_CONNECT_TIMEOUT max(CONNECTION_SWITCH_MIN,obd_timeout/2)
request_timeout () {
local facet=$1