}
run_test 104b "$RUNAS lfs check servers test ===================="
-cleanup_104c() {
- local facets=$1
- local param=$2
- local saved_blocks=$3
-
- for facet in ${facets//,/ }; do
- osd=$(do_facet $facet $LCTL get_param -n $param.mntdev)
- do_facet $facet zfs set recordsize=$saved_blocks $osd
- done
-}
-
#
# Verify $1 is within range of $2.
# Success when $1 is within range. That is, when $1 is >= 2% of $2 and
#
value_in_range() {
# Strip all units (M, G, T)
- actual=$(echo ${1/[a-zA-Z]*/})
- expect=$(echo ${2/[a-zA-Z]*/})
+ actual=$(echo $1 | tr -d A-Z)
+ expect=$(echo $2 | tr -d A-Z)
expect_lo=$(($expect * 98 / 100)) # 2% below
expect_hi=$(($expect * 102 / 100)) # 2% above
do_facet $facet zfs set recordsize=32768 $mdt
done
- # Restore OST recordize back to original
- stack_trap "cleanup_104c $ofacets $ost_param $saved_ost_blocks"
- # Restore MDT recordize back to original
- stack_trap "cleanup_104c $mfacets $mdt_param $saved_mdt_blocks"
-
# Give new values chance to reflect change
sleep 2
value_in_range ${df_after[3]%.*} ${df[3]%.*} ||
error "df avail: ${df_after[3]%.*} != ${df[3]%.*}"
+ # Restore MDT recordize back to original
+ for facet in ${mfacets//,/ }; do
+ mdt=$(do_facet $facet lctl get_param -n $mdt_param.mntdev)
+ do_facet $facet zfs set recordsize=$saved_mdt_blocks $mdt
+ done
+
+ # Restore OST recordize back to original
+ for facet in ${ofacets//,/ }; do
+ ost=$(do_facet $facet lctl get_param -n $ost_param.mntdev)
+ do_facet $facet zfs set recordsize=$saved_ost_blocks $ost
+ done
+
return 0
}
run_test 104c "Verify df vs lfs_df stays same after recordsize change"