set -e
ONLY=${ONLY:-"$*"}
-# bug number for skipped test:
-ALWAYS_EXCEPT=${ALWAYS_EXCEPT:-"$SANITY_GSS_EXCEPT"}
-# UPDATE THE COMMENT ABOVE WITH BUG NUMBERS WHEN CHANGING ALWAYS_EXCEPT!
-
-SRCDIR=$(dirname $0)
-SAVE_PWD=$PWD
-
-export MULTIOP=${MULTIOP:-multiop}
LUSTRE=${LUSTRE:-$(dirname $0)/..}
. $LUSTRE/tests/test-framework.sh
init_test_env $@
-. ${CONFIG:=$LUSTRE/tests/cfg/$NAME.sh}
init_logging
-require_dsh_mds || exit 0
+ALWAYS_EXCEPT="$SANITY_GSS_EXCEPT"
[ "$SLOW" = "no" ] && EXCEPT_SLOW="100 101"
+build_test_filter
+
+require_dsh_mds || exit 0
+
# $RUNAS_ID may get set incorrectly somewhere else
[ $UID -eq 0 -a $RUNAS_ID -eq 0 ] &&
error "RUNAS_ID set to 0, but UID is also 0!"
check_runas_id $RUNAS_ID $RUNAS_ID $RUNAS
-build_test_filter
-
start_dbench()
{
local NPROC=$(grep -c ^processor /proc/cpuinfo)
}
restore_krb5_cred() {
+ keyctl reap
cp $KRB5_CRED_SAVE $KRB5_CRED
chown $RUNAS_ID:$RUNAS_ID $KRB5_CRED
chmod 0600 $KRB5_CRED
local gssd_name=$(basename $gssd)
for ((i = 0; i < 10; i++)); do
- do_facet $facet "$gssd -v &"
+ do_facet $facet "$gssd -v"
done
# wait daemons entering "stable" status
# flush context, and touch
$RUNAS $LFS flushctx $MOUNT || error "can't flush context on $MOUNT"
- $RUNAS touch $file2 &
- TOUCHPID=$!
-
- # wait certain time
- echo "waiting $wait_time seconds for touch pid $TOUCHPID"
- sleep $wait_time
- num=$(ps --no-headers -p $TOUCHPID | wc -l)
- [ $num -eq 1 ] || error "touch already ended ($num)"
- echo "process $TOUCHPID still hanging there... OK"
+ $RUNAS touch $file2 && error 'should fail without lsvcgssd'
# restart lsvcgssd, expect touch suceed
echo "restart lsvcgssd and recovering"
start_gss_daemons $(comma_list $(mdts_nodes)) "$LSVCGSSD -v"
sleep 5
check_gss_daemon_nodes $(comma_list $(mdts_nodes)) lsvcgssd
- wait $TOUCHPID || error "touch fail"
+ $RUNAS keyctl reap
+ $RUNAS touch $file2 || error 'should not fail now'
[ -f $file2 ] || error "$file2 not found"
}
-run_test 5 "lsvcgssd dead, operations lead to recovery"
+run_test 5 "lsvcgssd dead, operations fail"
test_6() {
local nfile=10
do_facet $SINGLEMDS $LCTL set_param fail_loc=0
wait $TOUCHPID || error "touch should have succeeded"
- $LCTL dk | grep "Early reply #" || error "No early reply"
+ $LCTL dk | grep -i "Early reply #" || error "No early reply"
debugrestore
do_facet $SINGLEMDS "echo $ATOLDBASE >> $ATHISTORY" || true
echo "original general rules: $nrule_old"
for ((i = $nrule_old; i < $max; i++)); do
- set_rule $FSNAME elan$i any krb5n || error "set rule $i"
+ set_rule $FSNAME ${NETTYPE}$i any krb5n || error "set rule $i"
done
for ((i = $nrule_old; i < $max; i++)); do
- set_rule $FSNAME elan$i any || error "remove rule $i"
+ set_rule $FSNAME ${NETTYPE}$i any || error "remove rule $i"
done
nrule_new=$(do_facet mgs lctl get_param -n mgs.MGS.live.$FSNAME \
echo "original target rules: $nrule_old"
for ((i = $nrule_old; i < $max; i++)); do
- set_rule $FSNAME-MDT0000 elan$i any krb5i || error "set rule $i"
+ set_rule $FSNAME-MDT0000 ${NETTYPE}$i any krb5i || error "set rule $i"
done
for ((i = $nrule_old; i < $max; i++)); do
- set_rule $FSNAME-MDT0000 elan$i any || error "remove rule $i"
+ set_rule $FSNAME-MDT0000 ${NETTYPE}$i any || error "remove rule $i"
done
nrule_new=$(do_facet mgs lctl get_param -n mgs.MGS.live.$FSNAME \
# umount everything, modules still loaded
stopall
+ # start gss daemon on mgs node
+ combined_mgs_mds || start_gss_daemons $mgs_HOST "$LSVCGSSD -v"
+
# start mgs
start mgs $(mgsdevname 1) $MDS_MOUNT_OPTS