X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Ftests%2Fconf-sanity.sh;h=1f00d34503527e200bb5522bc5acd15e95bfed80;hp=cf8e3d43467bd3b9f644af5badf39c9744522794;hb=555561500b28a31639f360b209d7b1e4a81fa5f7;hpb=3917e62018878dfffac59ceed70f20b0419945d3 diff --git a/lustre/tests/conf-sanity.sh b/lustre/tests/conf-sanity.sh index cf8e3d4..1f00d34 100644 --- a/lustre/tests/conf-sanity.sh +++ b/lustre/tests/conf-sanity.sh @@ -1,9 +1,9 @@ #!/bin/bash -# FIXME - there is no reason to use all of these different -# return codes, espcially when most of them are mapped to something -# else anyway. The combination of test number and return code -# figure out what failed. +# FIXME - there is no reason to use all of these different return codes, +# espcially when most of them are mapped to something else anyway. +# The tests should use error() to describe the failure more clearly, +# and reduce the need to look into the tests to see what failed. set -e @@ -54,31 +54,29 @@ export MULTIOP=${MULTIOP:-multiop} . $LUSTRE/tests/test-framework.sh init_test_env $@ +. ${CONFIG:=$LUSTRE/tests/cfg/$NAME.sh} # use small MDS + OST size to speed formatting time # do not use too small MDSSIZE/OSTSIZE, which affect the default jouranl size +# STORED_MDSSIZE is used in test_18 +STORED_MDSSIZE=$MDSSIZE +STORED_OSTSIZE=$OSTSIZE MDSSIZE=200000 OSTSIZE=200000 -. ${CONFIG:=$LUSTRE/tests/cfg/$NAME.sh} if ! combined_mgs_mds; then # bug number for skipped test: 23954 ALWAYS_EXCEPT="$ALWAYS_EXCEPT 24b" fi -# STORED_MDSSIZE is used in test_18 -if [ -n "$MDSSIZE" ]; then - STORED_MDSSIZE=$MDSSIZE -fi - # pass "-E lazy_itable_init" to mke2fs to speed up the formatting time if [[ "$LDISKFS_MKFS_OPTS" != *lazy_itable_init* ]]; then LDISKFS_MKFS_OPTS=$(csa_add "$LDISKFS_MKFS_OPTS" -E lazy_itable_init) fi [ $(facet_fstype $SINGLEMDS) = "zfs" ] && -# bug number for skipped test: LU-2778 LU-2059 - ALWAYS_EXCEPT="$ALWAYS_EXCEPT 57b 50h" +# bug number for skipped test: LU-2778 LU-2059 LU-4444 + ALWAYS_EXCEPT="$ALWAYS_EXCEPT 57b 50h 69" init_logging @@ -86,7 +84,7 @@ init_logging require_dsh_mds || exit 0 require_dsh_ost || exit 0 # -[ "$SLOW" = "no" ] && EXCEPT_SLOW="30a 31 45" +[ "$SLOW" = "no" ] && EXCEPT_SLOW="30a 31 45 69" assert_DIR @@ -125,7 +123,7 @@ reformat() { start_mgs () { echo "start mgs" - start mgs $MGSDEV $MGS_MOUNT_OPTS + start mgs $(mgsdevname) $MGS_MOUNT_OPTS } start_mdt() { @@ -896,7 +894,7 @@ MDSDEV1_2=$fs2mds_DEV OSTDEV1_2=$fs2ost_DEV OSTDEV2_2=$fs3ost_DEV -cleanup_24a() { +cleanup_fs2() { trap 0 echo "umount $MOUNT2 ..." umount $MOUNT2 || true @@ -931,7 +929,7 @@ test_24a() { --reformat $fs2ostdev $fs2ostvdev || exit 10 setup - start fs2mds $fs2mdsdev $MDS_MOUNT_OPTS && trap cleanup_24a EXIT INT + start fs2mds $fs2mdsdev $MDS_MOUNT_OPTS && trap cleanup_fs2 EXIT INT start fs2ost $fs2ostdev $OST_MOUNT_OPTS mkdir -p $MOUNT2 mount -t lustre $MGSNID:/${FSNAME2} $MOUNT2 || return 1 @@ -956,7 +954,7 @@ test_24a() { stop_mds MDS=$(do_facet $SINGLEMDS "lctl get_param -n devices" | awk '($3 ~ "mdt" && $4 ~ "MDT") { print $4 }' | head -1) [ -z "$MDS" ] && error "No MDT" && return 8 - cleanup_24a + cleanup_fs2 cleanup_nocli || return 6 } run_test 24a "Multiple MDTs on a single node" @@ -1064,6 +1062,78 @@ test_28() { } run_test 28 "permanent parameter setting" +test_28a() { # LU-4221 + [[ $(lustre_version_code ost1) -ge $(version_code 2.5.52) ]] || + { skip "Need OST version at least 2.5.52" && return 0; } + [ "$(facet_fstype ost1)" = "zfs" ] && + skip "LU-4221: no such proc params for ZFS OSTs" && return + + local name + local param + local cmd + local old + local new + local device="$FSNAME-OST0000" + + setup + + # In this test we will set three kinds of proc parameters with + # lctl conf_param: + # 1. the ones moved from the OFD to the OSD, and only their + # symlinks kept in obdfilter + # 2. non-symlink ones in the OFD + # 3. non-symlink ones in the OSD + + # Check 1. + # prepare a symlink parameter in the OFD + name="writethrough_cache_enable" + param="$device.ost.$name" + cmd="$LCTL get_param -n obdfilter.$device.$name" + + # conf_param the symlink parameter in the OFD + old=$(do_facet ost1 $cmd) + new=$(((old + 1) % 2)) + set_conf_param_and_check ost1 "$cmd" "$param" $new || + error "lctl conf_param $device.ost.$param=$new failed" + + # conf_param the target parameter in the OSD + param="$device.osd.$name" + cmd="$LCTL get_param -n osd-*.$device.$name" + set_conf_param_and_check ost1 "$cmd" "$param" $old || + error "lctl conf_param $device.osd.$param=$old failed" + + # Check 2. + # prepare a non-symlink parameter in the OFD + name="client_cache_seconds" + param="$device.ost.$name" + cmd="$LCTL get_param -n obdfilter.$device.$name" + + # conf_param the parameter in the OFD + old=$(do_facet ost1 $cmd) + new=$((old * 2)) + set_conf_param_and_check ost1 "$cmd" "$param" $new || + error "lctl conf_param $device.ost.$param=$new failed" + set_conf_param_and_check ost1 "$cmd" "$param" $old || + error "lctl conf_param $device.ost.$param=$old failed" + + # Check 3. + # prepare a non-symlink parameter in the OSD + name="lma_self_repair" + param="$device.osd.$name" + cmd="$LCTL get_param -n osd-*.$device.$name" + + # conf_param the parameter in the OSD + old=$(do_facet ost1 $cmd) + new=$(((old + 1) % 2)) + set_conf_param_and_check ost1 "$cmd" "$param" $new || + error "lctl conf_param $device.osd.$param=$new failed" + set_conf_param_and_check ost1 "$cmd" "$param" $old || + error "lctl conf_param $device.osd.$param=$old failed" + + cleanup +} +run_test 28a "set symlink parameters permanently with conf_param" + test_29() { [ "$OSTCOUNT" -lt "2" ] && skip_env "$OSTCOUNT < 2, skipping" && return setup > /dev/null 2>&1 @@ -1393,16 +1463,20 @@ t32_reload_modules() { t32_wait_til_devices_gone() { local node=$1 local devices + local loops local i=0 echo wait for devices to go while ((i < 20)); do devices=$(do_rpc_nodes $node $LCTL device_list | wc -l) - ((devices == 0)) && return 0 + loops=$(do_rpc_nodes $node losetup -a | grep -c t32) + ((devices == 0 && loops == 0)) && return 0 sleep 5 i=$((i + 1)) done - echo "waiting for devices on $node: Given up" + echo "waiting for dev on $node: dev $devices loop $loops given up" + do_rpc_nodes $node "losetup -a" + do_rpc_nodes $node "$LCTL devices_list" return 1 } @@ -1537,6 +1611,7 @@ t32_test() { $r $LCTL set_param debug="$PTLDEBUG" $r $TUNEFS --dryrun $tmp/mdt || { + $r losetup -a error_noexit "tunefs.lustre before mounting the MDT" return 1 } @@ -1544,6 +1619,7 @@ t32_test() { mopts=loop,writeconf if [ $fstype == "ldiskfs" ]; then $r $TUNEFS --quota $tmp/mdt || { + $r losetup -a error_noexit "Enable mdt quota feature" return 1 } @@ -1560,7 +1636,7 @@ t32_test() { $r mount -t lustre -o loop,nosvc $tmp/mdt $tmp/mnt/mdt $r lctl replace_nids $fsname-OST0000 $ostnid $r lctl replace_nids $fsname-MDT0000 $nid - $r umount $tmp/mnt/mdt + $r umount -d $tmp/mnt/mdt fi mopts=loop,exclude=$fsname-OST0000 @@ -1569,6 +1645,7 @@ t32_test() { t32_wait_til_devices_gone $node $r mount -t lustre -o $mopts $tmp/mdt $tmp/mnt/mdt || { + $r losetup -a error_noexit "Mounting the MDT" return 1 } @@ -1620,6 +1697,7 @@ t32_test() { mopts=loop,mgsnode=$nid,$writeconf if [ $fstype == "ldiskfs" ]; then $r $TUNEFS --quota $tmp/ost || { + $r losetup -a error_noexit "Enable ost quota feature" return 1 } @@ -1868,6 +1946,7 @@ t32_test() { # mount a second time to make sure we didnt leave upgrade flag on $r $TUNEFS --dryrun $tmp/mdt || { + $r losetup -a error_noexit "tunefs.lustre before remounting the MDT" return 1 } @@ -1963,7 +2042,7 @@ test_33a() { # bug 12333, was test_33 --fsname=${FSNAME2} --index=8191 --reformat $fs2ostdev \ $fs2ostvdev || exit 10 - start fs2mds $fs2mdsdev $MDS_MOUNT_OPTS && trap cleanup_24a EXIT INT + start fs2mds $fs2mdsdev $MDS_MOUNT_OPTS && trap cleanup_fs2 EXIT INT start fs2ost $fs2ostdev $OST_MOUNT_OPTS do_facet $SINGLEMDS "$LCTL conf_param $FSNAME2.sys.timeout=200" || rc=1 mkdir -p $MOUNT2 @@ -2728,7 +2807,7 @@ test_48() { # bug 17636 run_test 48 "too many acls on file" # check PARAM_SYS_LDLM_TIMEOUT option of MKFS.LUSTRE -test_49() { # bug 17710 +test_49a() { # bug 17710 local timeout_orig=$TIMEOUT local ldlm_timeout_orig=$LDLM_TIMEOUT local LOCAL_TIMEOUT=20 @@ -2738,49 +2817,60 @@ test_49() { # bug 17710 reformat setup_noconfig - check_mount || return 1 + check_mount || error "client mount failed" echo "check ldlm_timout..." - LDLM_MDS="`do_facet $SINGLEMDS lctl get_param -n ldlm_timeout`" - LDLM_OST1="`do_facet ost1 lctl get_param -n ldlm_timeout`" - LDLM_CLIENT="`do_facet client lctl get_param -n ldlm_timeout`" + local LDLM_MDS="$(do_facet $SINGLEMDS lctl get_param -n ldlm_timeout)" + local LDLM_OST1="$(do_facet ost1 lctl get_param -n ldlm_timeout)" + local LDLM_CLIENT="$(do_facet client lctl get_param -n ldlm_timeout)" - if [ $LDLM_MDS -ne $LDLM_OST1 ] || [ $LDLM_MDS -ne $LDLM_CLIENT ]; then + if [ $LDLM_MDS -ne $LDLM_OST1 -o $LDLM_MDS -ne $LDLM_CLIENT ]; then error "Different LDLM_TIMEOUT:$LDLM_MDS $LDLM_OST1 $LDLM_CLIENT" fi if [ $LDLM_MDS -ne $((LOCAL_TIMEOUT / 3)) ]; then - error "LDLM_TIMEOUT($LDLM_MDS) is not correct" + error "LDLM_TIMEOUT($LDLM_MDS) is not $((LOCAL_TIMEOUT / 3))" fi umount_client $MOUNT - stop_ost || return 2 - stop_mds || return 3 + stop_ost || error "problem stopping OSS" + stop_mds || error "problem stopping MDS" + + LDLM_TIMEOUT=$ldlm_timeout_orig + TIMEOUT=$timeout_orig +} +run_test 49a "check PARAM_SYS_LDLM_TIMEOUT option of mkfs.lustre" + +test_49b() { # bug 17710 + local timeout_orig=$TIMEOUT + local ldlm_timeout_orig=$LDLM_TIMEOUT + local LOCAL_TIMEOUT=20 LDLM_TIMEOUT=$((LOCAL_TIMEOUT - 1)) + TIMEOUT=$LOCAL_TIMEOUT reformat setup_noconfig - check_mount || return 7 + check_mount || error "client mount failed" - LDLM_MDS="`do_facet $SINGLEMDS lctl get_param -n ldlm_timeout`" - LDLM_OST1="`do_facet ost1 lctl get_param -n ldlm_timeout`" - LDLM_CLIENT="`do_facet client lctl get_param -n ldlm_timeout`" + local LDLM_MDS="$(do_facet $SINGLEMDS lctl get_param -n ldlm_timeout)" + local LDLM_OST1="$(do_facet ost1 lctl get_param -n ldlm_timeout)" + local LDLM_CLIENT="$(do_facet client lctl get_param -n ldlm_timeout)" - if [ $LDLM_MDS -ne $LDLM_OST1 ] || [ $LDLM_MDS -ne $LDLM_CLIENT ]; then + if [ $LDLM_MDS -ne $LDLM_OST1 -o $LDLM_MDS -ne $LDLM_CLIENT ]; then error "Different LDLM_TIMEOUT:$LDLM_MDS $LDLM_OST1 $LDLM_CLIENT" fi if [ $LDLM_MDS -ne $((LOCAL_TIMEOUT - 1)) ]; then - error "LDLM_TIMEOUT($LDLM_MDS) is not correct" + error "LDLM_TIMEOUT($LDLM_MDS) is not $((LOCAL_TIMEOUT - 1))" fi - cleanup || return $? + cleanup || error "cleanup failed" LDLM_TIMEOUT=$ldlm_timeout_orig TIMEOUT=$timeout_orig } -run_test 49 "check PARAM_SYS_LDLM_TIMEOUT option of MKFS.LUSTRE" +run_test 49b "check PARAM_SYS_LDLM_TIMEOUT option of mkfs.lustre" lazystatfs() { # Test both statfs and lfs df and fail if either one fails @@ -3451,7 +3541,7 @@ test_58() { # bug 22658 # remove all files from the OBJECTS dir do_facet $SINGLEMDS "mount -t ldiskfs $opts $devname $MNTDIR" do_facet $SINGLEMDS "find $MNTDIR/O/1/d* -type f -delete" - do_facet $SINGLEMDS "umount $MNTDIR" + do_facet $SINGLEMDS "umount -d $MNTDIR" # restart MDS with missing llog files start_mds do_facet mds "lctl set_param fail_loc=0" @@ -3677,7 +3767,7 @@ test_65() { # LU-2237 do_facet $SINGLEMDS \ "mount -t $(facet_fstype $SINGLEMDS) $opts $devname $brpt" do_facet $SINGLEMDS "rm -f ${brpt}/last_rcvd" - do_facet $SINGLEMDS "umount $brpt" + do_facet $SINGLEMDS "umount -d $brpt" # restart MDS, the "last_rcvd" file should be recreated. start_mds || error "fail to restart the MDS" @@ -3827,7 +3917,7 @@ test_68() { umount_client $MOUNT || error "umount client failed" - start_mds || error "MDT start failed" + start_mdt 1 || error "MDT start failed" start_ost # START-END - the sequences we'll be reserving @@ -3862,10 +3952,60 @@ test_68() { } run_test 68 "be able to reserve specific sequences in FLDB" +test_69() { + local server_version=$(lustre_version_code $SINGLEMDS) + + [[ $server_version -lt $(version_code 2.4.2) ]] && + skip "Need MDS version at least 2.4.2" && return + + [[ $server_version -ge $(version_code 2.4.50) ]] && + [[ $server_version -lt $(version_code 2.5.0) ]] && + skip "Need MDS version at least 2.5.0" && return + + setup + + # use OST0000 since it probably has the most creations + local OSTNAME=$(ostname_from_index 0) + local mdtosc_proc1=$(get_mdtosc_proc_path mds1 $OSTNAME) + local last_id=$(do_facet mds1 lctl get_param -n \ + osc.$mdtosc_proc1.prealloc_last_id) + + # Want to have OST LAST_ID over 1.5 * OST_MAX_PRECREATE to + # verify that the LAST_ID recovery is working properly. If + # not, then the OST will refuse to allow the MDS connect + # because the LAST_ID value is too different from the MDS + #define OST_MAX_PRECREATE=20000 + local num_create=$((20000 * 5)) + + mkdir -p $DIR/$tdir + $LFS setstripe -i 0 $DIR/$tdir + createmany -o $DIR/$tdir/$tfile- $num_create || + error "createmany: failed to create $num_create files: $?" + # delete all of the files with objects on OST0 so the + # filesystem is not inconsistent later on + $LFS find $MOUNT --ost 0 | xargs rm + + stop_ost || error "OST0 stop failure" + add ost1 $(mkfs_opts ost1 $(ostdevname 1)) --reformat --replace \ + $(ostdevname 1) $(ostvdevname 1) || + error "reformat and replace $ostdev failed" + start_ost || error "OST0 restart failure" + wait_osc_import_state mds ost FULL + + touch $DIR/$tdir/$tfile-last || error "create file after reformat" + local idx=$($LFS getstripe -i $DIR/$tdir/$tfile-last) + [ $idx -ne 0 ] && error "$DIR/$tdir/$tfile-last on $idx not 0" || true + + cleanup +} +run_test 69 "replace an OST with the same index" + test_70a() { [ $MDSCOUNT -lt 2 ] && skip "needs >= 2 MDTs" && return local MDTIDX=1 + cleanup + start_mdt 1 || error "MDT0 start fail" start_ost || error "OST0 start fail" @@ -4284,7 +4424,7 @@ test_77() { # LU-3445 add fs2mds $(mkfs_opts mds1 $fs2mdsdev) --mgs --fsname=$fsname \ --reformat $fs2mdsdev $fs2mdsvdev || error "add fs2mds failed" - start fs2mds $fs2mdsdev $MDS_MOUNT_OPTS && trap cleanup_24a EXIT INT || + start fs2mds $fs2mdsdev $MDS_MOUNT_OPTS && trap cleanup_fs2 EXIT INT || error "start fs2mds failed" mgsnid=$(do_facet fs2mds $LCTL list_nids | xargs | tr ' ' ,) @@ -4299,15 +4439,162 @@ test_77() { # LU-3445 mkdir -p $MOUNT2 mount -t lustre $mgsnid:/$fsname $MOUNT2 || error "mount $MOUNT2 failed" DIR=$MOUNT2 MOUNT=$MOUNT2 check_mount || error "check $MOUNT2 failed" - cleanup_24a + cleanup_fs2 } run_test 77 "comma-separated MGS NIDs and failover node NIDs" +test_78() { + [[ $(facet_fstype $SINGLEMDS) != ldiskfs || + $(facet_fstype ost1) != ldiskfs ]] && + skip "only applicable to ldiskfs-based MDTs and OSTs" && return + + # reformat the Lustre filesystem with a smaller size + local saved_MDSSIZE=$MDSSIZE + local saved_OSTSIZE=$OSTSIZE + MDSSIZE=$((MDSSIZE - 20000)) + OSTSIZE=$((OSTSIZE - 20000)) + reformat || error "(1) reformat Lustre filesystem failed" + MDSSIZE=$saved_MDSSIZE + OSTSIZE=$saved_OSTSIZE + + # mount the Lustre filesystem + setup_noconfig || error "(2) setup Lustre filesystem failed" + + # create some files + log "create test files" + local i + local file + local num_files=100 + mkdir -p $MOUNT/$tdir || error "(3) mkdir $MOUNT/$tdir failed" + for i in $(seq $num_files); do + file=$MOUNT/$tdir/$tfile-$i + dd if=/dev/urandom of=$file count=1 bs=1M || + error "(4) create $file failed" + done + + # unmount the Lustre filesystem + cleanup || error "(5) cleanup Lustre filesystem failed" + + # run e2fsck on the MDT and OST devices + local mds_host=$(facet_active_host $SINGLEMDS) + local ost_host=$(facet_active_host ost1) + local mds_dev=$(mdsdevname ${SINGLEMDS//mds/}) + local ost_dev=$(ostdevname 1) + + run_e2fsck $mds_host $mds_dev "-y" + run_e2fsck $ost_host $ost_dev "-y" + + # get the original block count of the MDT and OST filesystems + local mds_orig_blks=$(get_block_count $SINGLEMDS $mds_dev) + local ost_orig_blks=$(get_block_count ost1 $ost_dev) + + # expand the MDT and OST filesystems to the device size + run_resize2fs $SINGLEMDS $mds_dev "" || error "expand $SINGLEMDS failed" + run_resize2fs ost1 $ost_dev "" || error "expand ost1 failed" + + # run e2fsck on the MDT and OST devices again + run_e2fsck $mds_host $mds_dev "-y" + run_e2fsck $ost_host $ost_dev "-y" + + # mount the Lustre filesystem + setup + + # check the files + log "check files after expanding the MDT and OST filesystems" + for i in $(seq $num_files); do + file=$MOUNT/$tdir/$tfile-$i + $CHECKSTAT -t file -s 1048576 $file || + error "(6) checkstat $file failed" + done + + # create more files + log "create more files after expanding the MDT and OST filesystems" + for i in $(seq $((num_files + 1)) $((num_files + 10))); do + file=$MOUNT/$tdir/$tfile-$i + dd if=/dev/urandom of=$file count=1 bs=1M || + error "(7) create $file failed" + done + + # unmount the Lustre filesystem + cleanup || error "(8) cleanup Lustre filesystem failed" + + # run e2fsck on the MDT and OST devices + run_e2fsck $mds_host $mds_dev "-y" + run_e2fsck $ost_host $ost_dev "-y" + + # get the maximum block count of the MDT and OST filesystems + local mds_max_blks=$(get_block_count $SINGLEMDS $mds_dev) + local ost_max_blks=$(get_block_count ost1 $ost_dev) + + # get the minimum block count of the MDT and OST filesystems + local mds_min_blks=$(run_resize2fs $SINGLEMDS $mds_dev "" "-P" 2>&1 | + grep minimum | sed -e 's/^.*filesystem: //g') + local ost_min_blks=$(run_resize2fs ost1 $ost_dev "" "-P" 2>&1 | + grep minimum | sed -e 's/^.*filesystem: //g') + + # shrink the MDT and OST filesystems to a smaller size + local shrunk=false + local new_blks + local base_blks + if [[ $mds_max_blks -gt $mds_min_blks && + $mds_max_blks -gt $mds_orig_blks ]]; then + [[ $mds_orig_blks -gt $mds_min_blks ]] && + base_blks=$mds_orig_blks || base_blks=$mds_min_blks + new_blks=$(( (mds_max_blks - base_blks) / 2 + base_blks )) + run_resize2fs $SINGLEMDS $mds_dev $new_blks || + error "shrink $SINGLEMDS to $new_blks failed" + shrunk=true + fi + + if [[ $ost_max_blks -gt $ost_min_blks && + $ost_max_blks -gt $ost_orig_blks ]]; then + [[ $ost_orig_blks -gt $ost_min_blks ]] && + base_blks=$ost_orig_blks || base_blks=$ost_min_blks + new_blks=$(( (ost_max_blks - base_blks) / 2 + base_blks )) + run_resize2fs ost1 $ost_dev $new_blks || + error "shrink ost1 to $new_blks failed" + shrunk=true + fi + + # check whether the MDT or OST filesystem was shrunk or not + if ! $shrunk; then + combined_mgs_mds || stop_mgs || error "(9) stop mgs failed" + reformat || error "(10) reformat Lustre filesystem failed" + return 0 + fi + + # run e2fsck on the MDT and OST devices again + run_e2fsck $mds_host $mds_dev "-y" + run_e2fsck $ost_host $ost_dev "-y" + + # mount the Lustre filesystem again + setup + + # check the files + log "check files after shrinking the MDT and OST filesystems" + for i in $(seq $((num_files + 10))); do + file=$MOUNT/$tdir/$tfile-$i + $CHECKSTAT -t file -s 1048576 $file || + error "(11) checkstat $file failed" + done + + # unmount and reformat the Lustre filesystem + cleanup || error "(12) cleanup Lustre filesystem failed" + combined_mgs_mds || stop_mgs || error "(13) stop mgs failed" + reformat || error "(14) reformat Lustre filesystem failed" +} +run_test 78 "run resize2fs on MDT and OST filesystems" + if ! combined_mgs_mds ; then stop mgs fi cleanup_gss +# restore the values of MDSSIZE and OSTSIZE +MDSSIZE=$STORED_MDSSIZE +OSTSIZE=$STORED_OSTSIZE +reformat + complete $SECONDS exit_status