X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Ftests%2Ftest-framework.sh;h=aa0e4633c20cd5fefc17bd71afb4553751b883ce;hb=07d01fce91f2412322b94e2fd2b021689fc0c035;hp=95d5a17a3e58798363403c2d27a67e083fe4d3ed;hpb=9daaa737c7ff939d52347963f05bc673cbc5a05c;p=fs%2Flustre-release.git diff --git a/lustre/tests/test-framework.sh b/lustre/tests/test-framework.sh index 95d5a17..aa0e463 100644 --- a/lustre/tests/test-framework.sh +++ b/lustre/tests/test-framework.sh @@ -577,6 +577,50 @@ ostdevlabel() { echo -n $label } +set_debug_size () { + local dz=${1:-$DEBUG_SIZE} + local cpus=$(getconf _NPROCESSORS_CONF) + + # bug 19944, adjust size to be -gt num_possible_cpus() + # promise 2MB for every cpu at least + if [ -n "$cpus" ] && [ $((cpus * 2)) -gt $dz ]; then + dz=$((cpus * 2)) + fi + lctl set_param debug_mb=$dz +} + +set_default_debug () { + local debug=${1:-"$PTLDEBUG"} + local subsystem_debug=${2:-"$SUBSYSTEM"} + local debug_size=${3:-$DEBUG_SIZE} + + lctl set_param debug="$debug" + lctl set_param subsystem_debug="${subsystem_debug# }" + + set_debug_size $debug_size + sync +} + +set_default_debug_nodes () { + local nodes=$1 + + if [[ ,$nodes, = *,$HOSTNAME,* ]]; then + nodes=$(exclude_items_from_list "$nodes" "$HOSTNAME") + set_default_debug + fi + + [[ -n $nodes ]] && do_rpc_nodes $nodes set_default_debug \ + \\\"$PTLDEBUG\\\" \\\"$SUBSYSTEM\\\" $DEBUG_SIZE || true +} + +set_default_debug_facet () { + local facet=$1 + local node=$(facet_active_host $facet) + [ -z "$node" ] && echo "No host defined for facet $facet" && exit 1 + + set_default_debug_nodes $node +} + # Facet functions mount_facets () { local facets=${1:-$(get_facets)} @@ -601,10 +645,7 @@ mount_facet() { echo "mount -t lustre $@ ${!dev} $mntpt" echo "Start of ${!dev} on ${facet} failed ${RC}" else - do_facet ${facet} "lctl set_param debug=\\\"$PTLDEBUG\\\"; \ - lctl set_param subsystem_debug=\\\"${SUBSYSTEM# }\\\"; \ - lctl set_param debug_mb=${DEBUG_SIZE}; \ - sync" + set_default_debug_facet $facet label=$(do_facet ${facet} "$E2LABEL ${!dev}") [ -z "$label" ] && echo no label for ${!dev} && exit 1 @@ -757,9 +798,7 @@ zconf_mount() { do_node $client mkdir -p $mnt do_node $client mount -t lustre $OPTIONS $device $mnt || return 1 - do_node $client "lctl set_param debug=\\\"$PTLDEBUG\\\"; - lctl set_param subsystem_debug=\\\"${SUBSYSTEM# }\\\"; - lctl set_param debug_mb=${DEBUG_SIZE}" + set_default_debug_nodes $client return 0 } @@ -876,9 +915,7 @@ exit \\\$rc" || return ${PIPESTATUS[0]} echo "Started clients $clients: " do_nodes $clients "mount | grep -w $mnt" - do_nodes $clients "lctl set_param debug=\\\"$PTLDEBUG\\\"; - lctl set_param subsystem_debug=\\\"${SUBSYSTEM# }\\\"; - lctl set_param debug_mb=${DEBUG_SIZE};" + set_default_debug_nodes $clients return 0 } @@ -1674,6 +1711,8 @@ change_active() { # save the active host for this facet local activevar=${facet}active echo "$activevar=${!activevar}" > $TMP/$activevar + [[ $facet = mds1 ]] && combined_mgs_mds && \ + echo "mgsactive=${!activevar}" > $TMP/mgsactive local TO=`facet_active_host $facet` echo "Failover $facet to $TO" done @@ -1803,6 +1842,7 @@ add() { # make sure its not already running stop ${facet} -f rm -f $TMP/${facet}active + [[ $facet = mds1 ]] && combined_mgs_mds && rm -f $TMP/mgsactive do_facet ${facet} $MKFS $* } @@ -1824,6 +1864,8 @@ mdsdevname() { facet_mntpt () { local facet=$1 + [[ $facet = mgs ]] && combined_mgs_mds && facet="mds1" + local var=${facet}_MOUNT eval mntpt=${!var:-${MOUNT%/*}/$facet} @@ -1855,6 +1897,7 @@ stopall() { stop mds$num -f rm -f ${TMP}/mds${num}active done + combined_mgs_mds && rm -f $TMP/mgsactive for num in `seq $OSTCOUNT`; do stop ost$num -f @@ -2387,10 +2430,7 @@ check_and_setup_lustre() { init_facets_vars init_param_vars - do_nodes $(comma_list $(nodes_list)) "lctl set_param debug=\\\"$PTLDEBUG\\\"; - lctl set_param subsystem_debug=\\\"${SUBSYSTEM# }\\\"; - lctl set_param debug_mb=${DEBUG_SIZE}; - sync" + set_default_debug_nodes $(comma_list $(nodes_list)) fi init_gss @@ -3171,9 +3211,11 @@ run_one() { run_one_logged() { local BEFORE=`date +%s` local TEST_ERROR - local name=${TESTSUITE}.test_${1}.test_log.$(hostname).log + local name=${TESTSUITE}.test_${1}.test_log.$(hostname -s).log local test_log=$LOGDIR/$name rm -rf $LOGDIR/err + local SAVE_UMASK=`umask` + umask 0022 echo log_sub_test_begin test_${1} @@ -3192,6 +3234,8 @@ run_one_logged() { $FAIL_ON_ERROR && exit $RC fi + umask $SAVE_UMASK + return 0 } @@ -4033,14 +4077,14 @@ gather_logs () { if [ "$CLIENTONLY" -o "$PDSH" == "no_dsh" ]; then echo "Dumping logs only on local client." - $LCTL dk > ${prefix}.debug_log.$(hostname).${suffix} - dmesg > ${prefix}.dmesg.$(hostname).${suffix} + $LCTL dk > ${prefix}.debug_log.$(hostname -s).${suffix} + dmesg > ${prefix}.dmesg.$(hostname -s).${suffix} return fi do_nodesv $list \ - "$LCTL dk > ${prefix}.debug_log.\\\$(hostname).${suffix}; - dmesg > ${prefix}.dmesg.\\\$(hostname).${suffix}" + "$LCTL dk > ${prefix}.debug_log.\\\$(hostname -s).${suffix}; + dmesg > ${prefix}.dmesg.\\\$(hostname -s).${suffix}" if [ ! -f $LOGDIR/shared ]; then do_nodes $list rsync -az "${prefix}.*.${suffix}" $HOSTNAME:$LOGDIR fi @@ -4399,7 +4443,7 @@ check_logdir() { # Not found. Create local logdir mkdir -p $dir else - touch $dir/node.$(hostname).yml + touch $dir/node.$(hostname -s).yml fi return 0 } @@ -4407,7 +4451,7 @@ check_logdir() { check_write_access() { local dir=$1 for node in $(nodes_list); do - if [ ! -f "$dir/node.${node}.yml" ]; then + if [ ! -f "$dir/node.$(short_hostname ${node}).yml" ]; then # Logdir not accessible/writable from this node. return 1 fi @@ -4419,6 +4463,9 @@ init_logging() { if [[ -n $YAML_LOG ]]; then return fi + local SAVE_UMASK=`umask` + umask 0000 + export YAML_LOG=${LOGDIR}/results.yml mkdir -p $LOGDIR init_clients_lists @@ -4433,6 +4480,8 @@ init_logging() { yml_nodes_file $LOGDIR >> $YAML_LOG yml_results_file >> $YAML_LOG + + umask $SAVE_UMASK } log_test() { @@ -4559,4 +4608,3 @@ is_sanity_benchmark() { min_ost_size () { $LCTL get_param -n osc.*.kbytesavail | sort -n | head -n1 } -