Whamcloud - gitweb
LU-3485 tests: add resize2fs testing for MDT and OST filesystems
[fs/lustre-release.git] / lustre / tests / test-framework.sh
index 47dfe99..e5c8c62 100644 (file)
@@ -179,6 +179,15 @@ init_test_env() {
         fi
     fi
 
+       export RESIZE2FS=$RESIZE2FS
+       if [ -z "$RESIZE2FS" ]; then
+               if which resizefs.ldiskfs >/dev/null 2>&1; then
+                       export RESIZE2FS=resizefs.ldiskfs
+               else
+                       export RESIZE2FS=resize2fs
+               fi
+       fi
+
     export LFSCK_BIN=${LFSCK_BIN:-lfsck}
     export LFSCK_ALWAYS=${LFSCK_ALWAYS:-"no"} # check fs after each test suite
     export FSCK_MAX_ERR=4   # File system errors left uncorrected
@@ -3766,6 +3775,19 @@ run_e2fsck() {
     return 0
 }
 
+#
+# Run resize2fs on MDT or OST device.
+#
+run_resize2fs() {
+       local facet=$1
+       local device=$2
+       local size=$3
+       shift 3
+       local opts="$@"
+
+       do_facet $facet "$RESIZE2FS $opts $device $size"
+}
+
 # verify a directory is shared among nodes.
 check_shared_dir() {
        local dir=$1
@@ -6282,6 +6304,19 @@ min_ost_size () {
     $LCTL get_param -n osc.*.kbytesavail | sort -n | head -n1
 }
 
+#
+# Get the block count of the filesystem.
+#
+get_block_count() {
+       local facet=$1
+       local device=$2
+       local count
+
+       count=$(do_facet $facet "$DUMPE2FS -h $device 2>&1" |
+               awk '/^Block count:/ {print $3}')
+       echo -n $count
+}
+
 # Get the block size of the filesystem.
 get_block_size() {
     local facet=$1