X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Ftests%2Freplay-vbr.sh;h=e25ffee0344154d52b8839d3b21b37f3c8665fff;hb=b031b90a0320401db1ae474c4cbd89226bf5f2c9;hp=e1af41b987b8f338f2755afc3ebb50e095185a79;hpb=8c4f96f910786ff3d73474ef5f8d4a96a30a0bed;p=fs%2Flustre-release.git diff --git a/lustre/tests/replay-vbr.sh b/lustre/tests/replay-vbr.sh index e1af41b..e25ffee 100644 --- a/lustre/tests/replay-vbr.sh +++ b/lustre/tests/replay-vbr.sh @@ -61,17 +61,17 @@ rmultiop_start() { local multiop_pid multiop_pid=$(do_node $client cat $pid_file) [ -n "$multiop_pid" ] || error "$client : Can not get multiop_pid from $pid_file " - eval export $(client_var_name $client)_multiop_pid=$multiop_pid - eval export $(client_var_name $client)_do_node_pid=$pid - local var=$(client_var_name $client)_multiop_pid + eval export $(node_var_name $client)_multiop_pid=$multiop_pid + eval export $(node_var_name $client)_do_node_pid=$pid + local var=$(node_var_name $client)_multiop_pid echo client $client multiop_bg started multiop_pid=${!var} return $? } rmultiop_stop() { local client=$1 - local multiop_pid=$(client_var_name $client)_multiop_pid - local do_node_pid=$(client_var_name $client)_do_node_pid + local multiop_pid=$(node_var_name $client)_multiop_pid + local do_node_pid=$(node_var_name $client)_do_node_pid echo "Stopping multiop_pid=${!multiop_pid} (kill ${!multiop_pid} on $client)" do_node $client kill -USR1 ${!multiop_pid} @@ -86,13 +86,31 @@ get_version() { local fid fid=$(do_node $client $LFS path2fid $file) - do_facet $SINGLEMDS $LCTL --device ${!var} getobjversion $fid + do_facet $SINGLEMDS $LCTL --device ${!var} getobjversion \\\"$fid\\\" } #save COS setting cos_param_file=$TMP/rvbr-cos-params save_lustre_params $(comma_list $(mdts_nodes)) "mdt.*.commit_on_sharing" > $cos_param_file +test_0a() { + get_version $CLIENT1 $DIR/$tdir/1a || true +} +run_test 0a "getversion for non existent file shouldn't cause kernel panic" + +test_0b() { + local var=${SINGLEMDS}_svc + local fid + local file=$DIR/$tdir/f + + do_node $CLIENT1 mkdir -p $DIR/$tdir/ + do_node $CLIENT1 touch $file + fid=$(do_node $CLIENT1 $LFS path2fid $file) + do_node $CLIENT1 rm -rf $file + do_facet $SINGLEMDS $LCTL --device ${!var} getobjversion \\\"$fid\\\" || true +} +run_test 0b "getversion for non existent fid shouldn't cause kernel panic" + # test set #1: OPEN test_1a() { # former test_0a local file=$DIR/$tfile