Whamcloud - gitweb
LU-9899 tests: mount client on MGS for tests with pools
[fs/lustre-release.git] / lustre / tests / test-framework.sh
index e94f941..be82fec 100755 (executable)
@@ -441,15 +441,13 @@ export LINUX_VERSION_CODE=$(version_code ${LINUX_VERSION//\./ })
 # output: prints version string to stdout in (up to 4) dotted-decimal values
 lustre_build_version() {
        local facet=${1:-client}
-       local ver
-
        local ver=$(do_facet $facet "$LCTL get_param -n version 2>/dev/null ||
                                $LCTL lustre_build_version 2>/dev/null ||
                                $LCTL --version 2>/dev/null | cut -d' ' -f2")
-       local lver=$(egrep -i "lustre: |version: " <<<$ver | head -n 1)
+       local lver=$(egrep -i "lustre: |version: " <<<"$ver" | head -n 1)
        [ -n "$lver" ] && ver="$lver"
 
-       sed -e 's/.*: //' -e 's/^v//' -e 's/-.*//' -e 's/_/./g' <<<$ver |
+       sed -e 's/[^:]*: //' -e 's/^v//' -e 's/[ -].*//' -e 's/_/./g' <<<$ver |
                cut -d. -f1-4
 }
 
@@ -613,18 +611,18 @@ load_modules_local() {
                                LNETLND="socklnd/ksocklnd"
                esac
        fi
-    load_module ../lnet/klnds/$LNETLND
-    load_module obdclass/obdclass
-    load_module ptlrpc/ptlrpc
-    load_module ptlrpc/gss/ptlrpc_gss
-    load_module fld/fld
-    load_module fid/fid
-    load_module lmv/lmv
-    load_module mdc/mdc
-    load_module osc/osc
-    load_module lov/lov
-    load_module mgc/mgc
-    load_module obdecho/obdecho
+       load_module ../lnet/klnds/$LNETLND
+       load_module obdclass/obdclass
+       load_module ptlrpc/ptlrpc
+       load_module ptlrpc/gss/ptlrpc_gss
+       load_module fld/fld
+       load_module fid/fid
+       load_module lmv/lmv
+       load_module osc/osc
+       load_module mdc/mdc
+       load_module lov/lov
+       load_module mgc/mgc
+       load_module obdecho/obdecho
        if ! client_only; then
                SYMLIST=/proc/kallsyms
                grep -q crc16 $SYMLIST ||
@@ -748,7 +746,7 @@ fs_log_size() {
        local size=0
        case $fstype in
                ldiskfs) size=50;; # largest seen is 44, leave some headroom
-               zfs)     size=400;; # largest seen is 384
+               zfs)     size=512;; # largest seen is 512
        esac
 
        echo -n $size
@@ -1866,6 +1864,19 @@ zconf_umount() {
     fi
 }
 
+# Mount the file system on the MGS
+mount_mgs_client() {
+       do_facet mgs "mkdir -p $MOUNT"
+       zconf_mount $mgs_HOST $MOUNT $MOUNT_OPTS ||
+               error "unable to mount $MOUNT on MGS"
+}
+
+# Unmount the file system on the MGS
+umount_mgs_client() {
+       zconf_umount $mgs_HOST $MOUNT
+       do_facet mgs "rm -rf $MOUNT"
+}
+
 # nodes is comma list
 sanity_mount_check_nodes () {
     local nodes=$1
@@ -2503,7 +2514,7 @@ wait_update_facet() {
 
 sync_all_data() {
        do_nodes $(comma_list $(mdts_nodes)) \
-           "lctl set_param -n osd*.*MDT*.force_sync=1"
+           "lctl set_param -n os[cd]*.*MDT*.force_sync=1"
        do_nodes $(comma_list $(osts_nodes)) \
            "lctl set_param -n osd*.*OS*.force_sync=1" 2>&1 |
                grep -v 'Found no match'
@@ -2544,7 +2555,7 @@ wait_delete_completed_mds() {
        mds2sync=$(comma_list $mds2sync)
 
        # sync MDS transactions
-       do_nodes $mds2sync "$LCTL set_param -n osd*.*MD*.force_sync 1"
+       do_nodes $mds2sync "$LCTL set_param -n os[cd]*.*MD*.force_sync 1"
 
        # wait till all changes are sent and commmitted by OSTs
        # for ldiskfs space is released upon execution, but DMU
@@ -3971,7 +3982,7 @@ format_ost() {
 }
 
 formatall() {
-       stopall
+       stopall -f
        # Set hostid for ZFS/SPL zpool import protection
        # (Assumes MDS version is also OSS version)
        if [ $(lustre_version_code $SINGLEMDS) -ge $(version_code 2.8.54) ];
@@ -6247,16 +6258,17 @@ calc_osc_kbytes () {
 save_lustre_params() {
        local facets=$1
        local facet
-       local nodes
-       local node
+       local facet_svc
 
        for facet in ${facets//,/ }; do
-               node=$(facet_active_host $facet)
-               [[ *\ $node\ * = " $nodes " ]] && continue
-               nodes="$nodes $node"
-
-               do_node $node "$LCTL get_param $2 |
-                       while read s; do echo $facet \\\$s; done"
+               facet_svc=$(facet_svc $facet)
+               do_facet $facet \
+                       "params=\\\$($LCTL get_param $2);
+                        [[ -z \\\"$facet_svc\\\" ]] && param= ||
+                        param=\\\$(grep $facet_svc <<< \\\"\\\$params\\\");
+                        [[ -z \\\$param ]] && param=\\\"\\\$params\\\";
+                        while read s; do echo $facet \\\$s;
+                        done <<< \\\"\\\$param\\\""
        done
 }
 
@@ -7797,11 +7809,14 @@ test_mkdir() {
                local parent=$(dirname $path)
 
                [ -d $path ] && return 0
-               [ ! -d ${parent} ] && mkdir -p ${parent}
+               if [ ! -d ${parent} ]; then
+                       mkdir -p ${parent} ||
+                               error "mkdir parent '$parent' failed"
+               fi
        fi
 
        if [ $MDSCOUNT -le 1 ]; then
-               mkdir $path
+               mkdir $path || error "mkdir '$path' failed"
        else
                local test_num=$(echo $testnum | sed -e 's/[^0-9]*//g')
                local mdt_index
@@ -7812,7 +7827,8 @@ test_mkdir() {
                        mdt_index=$stripe_index
                fi
                echo "striped dir -i$mdt_index -c$stripe_count $path"
-               $LFS setdirstripe -i$mdt_index -c$stripe_count $path
+               $LFS mkdir -i$mdt_index -c$stripe_count $path ||
+                       error "mkdir -i $mdt_index -c$stripe_count $path failed"
        fi
 }