test_1b () {
local param_file=$TMP/$tfile-params
- do_nodesv $(comma_list $(osts_nodes)) lctl get_param obdfilter.${FSNAME}-*.sync_journal
-
- save_lustre_params $(comma_list $(osts_nodes)) "obdfilter.${FSNAME}-*.sync_journal" >$param_file
- do_nodesv $(comma_list $(osts_nodes)) lctl set_param obdfilter.${FSNAME}-*.sync_journal=0
+ do_nodesv $(comma_list $(osts_nodes)) \
+ $LCTL get_param obdfilter.${FSNAME}-*.sync_journal
+ save_lustre_params $(get_facets OST) \
+ "obdfilter.${FSNAME}-*.sync_journal" > $param_file
+ do_nodesv $(comma_list $(osts_nodes)) \
+ $LCTL set_param obdfilter.${FSNAME}-*.sync_journal=0
local stime=$(date +%s)
thrlo=4 nobjhi=1 thrhi=4 obdflter_survey_run disk
test_2b () {
local param_file=$TMP/$tfile-params
- do_nodesv $(comma_list $(osts_nodes)) lctl get_param obdfilter.${FSNAME}-*.sync_journal
-
- save_lustre_params $(comma_list $(osts_nodes)) "obdfilter.${FSNAME}-*.sync_journal" >$param_file
- do_nodesv $(comma_list $(osts_nodes)) lctl set_param obdfilter.${FSNAME}-*.sync_journal=0
+ do_nodesv $(comma_list $(osts_nodes)) \
+ $LCTL get_param obdfilter.${FSNAME}-*.sync_journal
+ save_lustre_params $(get_facets OST) \
+ "obdfilter.${FSNAME}-*.sync_journal" > $param_file
+ do_nodesv $(comma_list $(osts_nodes)) \
+ $LCTL set_param obdfilter.${FSNAME}-*.sync_journal=0
local stime=$(date +%s)
thrlo=4 nobjhi=1 thrhi=4 obdflter_survey_run netdisk
test_21a() {
local param_file=$TMP/$tfile-params
- save_lustre_params $(facet_active_host $SINGLEMDS) "mdt.*.commit_on_sharing" > $param_file
+ save_lustre_params $SINGLEMDS "mdt.*.commit_on_sharing" > $param_file
do_facet $SINGLEMDS lctl set_param mdt.*.commit_on_sharing=1
touch $MOUNT1/$tfile-1
mv $MOUNT2/$tfile-1 $MOUNT2/$tfile-2
local num=$(get_mds_dir $MOUNT1)
- save_lustre_params $(facet_active_host mds$num) "mdt.*.commit_on_sharing" > $param_file
+ save_lustre_params mds$num "mdt.*.commit_on_sharing" > $param_file
# COS enabled
local COS=1
#save COS setting
cos_param_file=$TMP/rvbr-cos-params
-save_lustre_params $(comma_list $(mdts_nodes)) "mdt.*.commit_on_sharing" > $cos_param_file
+save_lustre_params $(get_facets MDS) "mdt.*.commit_on_sharing" > $cos_param_file
test_0a() {
get_version $CLIENT1 $DIR/$tdir/1a || true
test_216() { # bug 20317
[ $PARALLEL == "yes" ] && skip "skip parallel run" && return
- remote_ost_nodsh && skip "remote OST with nodsh" && return
- local node
- local p="$TMP/sanityN-$TESTNAME.parameters"
- save_lustre_params $HOSTNAME "osc.*.contention_seconds" > $p
- for node in $(osts_nodes); do
- save_lustre_params $node "ldlm.namespaces.filter-*.max_nolock_bytes" >> $p
- save_lustre_params $node "ldlm.namespaces.filter-*.contended_locks" >> $p
- save_lustre_params $node "ldlm.namespaces.filter-*.contention_seconds" >> $p
- done
- clear_osc_stats
+ remote_ost_nodsh && skip "remote OST with nodsh" && return
+
+ local node
+ local facets=$(get_facets OST)
+ local p="$TMP/$TESTSUITE-$TESTNAME.parameters"
+
+ save_lustre_params client "osc.*.contention_seconds" > $p
+ save_lustre_params $facets \
+ "ldlm.namespaces.filter-*.max_nolock_bytes" >> $p
+ save_lustre_params $facets \
+ "ldlm.namespaces.filter-*.contended_locks" >> $p
+ save_lustre_params $facets \
+ "ldlm.namespaces.filter-*.contention_seconds" >> $p
+ clear_osc_stats
# agressive lockless i/o settings
for node in $(osts_nodes); do
}
test_32a() { # bug 11270
- local p="$TMP/sanityN-$TESTNAME.parameters"
- save_lustre_params $HOSTNAME osc.*.lockless_truncate > $p
+ local p="$TMP/$TESTSUITE-$TESTNAME.parameters"
+ save_lustre_params client "osc.*.lockless_truncate" > $p
cancel_lru_locks osc
enable_lockless_truncate 1
rm -f $DIR1/$tfile
test_32b() { # bug 11270
remote_ost_nodsh && skip "remote OST with nodsh" && return
- local node
- local p="$TMP/sanityN-$TESTNAME.parameters"
- save_lustre_params $HOSTNAME "osc.*.contention_seconds" > $p
- for node in $(osts_nodes); do
- save_lustre_params $node "ldlm.namespaces.filter-*.max_nolock_bytes" >> $p
- save_lustre_params $node "ldlm.namespaces.filter-*.contended_locks" >> $p
- save_lustre_params $node "ldlm.namespaces.filter-*.contention_seconds" >> $p
- done
- clear_osc_stats
+ local node
+ local facets=$(get_facets OST)
+ local p="$TMP/$TESTSUITE-$TESTNAME.parameters"
+
+ save_lustre_params client "osc.*.contention_seconds" > $p
+ save_lustre_params $facets \
+ "ldlm.namespaces.filter-*.max_nolock_bytes" >> $p
+ save_lustre_params $facets \
+ "ldlm.namespaces.filter-*.contended_locks" >> $p
+ save_lustre_params $facets \
+ "ldlm.namespaces.filter-*.contention_seconds" >> $p
+ clear_osc_stats
+
# agressive lockless i/o settings
for node in $(osts_nodes); do
do_node $node 'lctl set_param -n ldlm.namespaces.filter-*.max_nolock_bytes 2000000; lctl set_param -n ldlm.namespaces.filter-*.contended_locks 0; lctl set_param -n ldlm.namespaces.filter-*.contention_seconds 60'
local param_file=$TMP/$tfile-params
local fstype=$(facet_fstype $SINGLEMDS)
- save_lustre_params $(comma_list $(mdts_nodes)) "mdt.*.commit_on_sharing" > $param_file
+ save_lustre_params $(get_facets MDS) \
+ "mdt.*.commit_on_sharing" > $param_file
local COS
local jbdold="N/A"
local nfiles=${TEST33_NFILES:-10000}
local param_file=$TMP/$tfile-params
- save_lustre_params $(comma_list $(mdts_nodes)) \
- "mdt.*.commit_on_sharing" > $param_file
+ save_lustre_params $(get_facets MDS) \
+ "mdt.*.commit_on_sharing" > $param_file
+
local COS
local jbdold
local jbdnew
$LCTL get_param -n osc.*[oO][sS][cC][-_][0-9a-f]*.$1 | calc_sum
}
-# save_lustre_params(node, parameter_mask)
-# generate a stream of formatted strings (<node> <param name>=<param value>)
+# save_lustre_params(comma separated facet list, parameter_mask)
+# generate a stream of formatted strings (<facet> <param name>=<param value>)
save_lustre_params() {
- local s
- do_nodesv $1 "lctl get_param $2 | while read s; do echo \\\$s; done"
+ local facets=$1
+ local facet
+ local nodes
+ local node
+
+ 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"
+ done
}
# restore lustre parameters from input stream, produces by save_lustre_params
restore_lustre_params() {
- local node
- local name
- local val
- while IFS=" =" read node name val; do
- do_node ${node//:/} "lctl set_param -n $name $val"
- done
+ local facet
+ local name
+ local val
+
+ while IFS=" =" read facet name val; do
+ do_facet $facet "$LCTL set_param -n $name $val"
+ done
}
check_catastrophe() {