diff --git a/lustre/tests/conf-sanity.sh b/lustre/tests/conf-sanity.sh index 34214c180f45176e0f64880cddee91f06360142a..24a9c39cc7a3e74d94cc97e53c80aa420a306437 100644 --- a/lustre/tests/conf-sanity.sh +++ b/lustre/tests/conf-sanity.sh @@ -1012,14 +1012,24 @@ test_29() { # check MDT too local MPROC="$LPROC/osc/$FSNAME-OST0001-osc/active" - RESULT=`do_facet mds " [ -r $MPROC ] && cat $MPROC"` - [ ${PIPESTATUS[0]} = 0 ] || error "Can't read $MPROC" - if [ $RESULT -ne $DEAC ]; then - echo "MDT not deactivated: $RESULT" - return 4 - else - echo "MDT deactivated: also" - fi + local MAX=30 + local WAIT=0 + while [ 1 ]; do + sleep 5 + RESULT=`do_facet mds " [ -r $MPROC ] && cat $MPROC"` + [ ${PIPESTATUS[0]} = 0 ] || error "Can't read $MPROC" + if [ $RESULT -eq $DEAC ]; then + echo "MDT deactivated also after $WAIT sec (got $RESULT)" + break + fi + WAIT=$((WAIT + 5)) + if [ $WAIT -eq $MAX ]; then + echo "MDT not deactivated: wanted $DEAC got $RESULT" + return 4 + fi + echo "Waiting $(($MAX - $WAIT)) secs for MDT deactivated" + done + # test new client starts deactivated umount_client $MOUNT || return 200 mount_client $MOUNT @@ -1307,4 +1317,3 @@ run_test 35 "Reconnect to the last active server first" equals_msg `basename $0`: test complete [ -f "$TESTSUITELOG" ] && cat $TESTSUITELOG || true -