X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Ftests%2Fsanityn.sh;h=9acd1cb57b9546657b79bbb3ad486bc901b0f5c6;hp=5871961effc2b92718da991ffa9454fd086caa91;hb=ea383222e031cdceffbdf2e3afab3b6d1fd53c8e;hpb=fb14b7bc37c613482bea672ec11dbd98633ddce3 diff --git a/lustre/tests/sanityn.sh b/lustre/tests/sanityn.sh index 5871961..9acd1cb 100644 --- a/lustre/tests/sanityn.sh +++ b/lustre/tests/sanityn.sh @@ -983,6 +983,7 @@ cleanup_34() { } test_34() { #16129 + remote_ost_nodsh && skip "remote OST with nodsh" && return local OPER local lock_in local lock_out @@ -1260,6 +1261,7 @@ check_pdo_conflict() { # pdirop tests # test 40: check non-blocking operations test_40a() { + remote_mds_nodsh && skip "remote MDS with nodsh" && return #define OBD_FAIL_ONCE|OBD_FAIL_MDS_PDO_LOCK 0x145 do_facet $SINGLEMDS lctl set_param fail_loc=0x80000145 touch $DIR2 @@ -1289,6 +1291,7 @@ test_40a() { run_test 40a "pdirops: create vs others ==============" test_40b() { + remote_mds_nodsh && skip "remote MDS with nodsh" && return #define OBD_FAIL_ONCE|OBD_FAIL_MDS_PDO_LOCK 0x145 do_facet $SINGLEMDS lctl set_param fail_loc=0x80000145 touch $DIR1/$tfile & @@ -1318,6 +1321,7 @@ test_40b() { run_test 40b "pdirops: open|create and others ==============" test_40c() { + remote_mds_nodsh && skip "remote MDS with nodsh" && return touch $DIR1/$tfile #define OBD_FAIL_ONCE|OBD_FAIL_MDS_PDO_LOCK 0x145 do_facet $SINGLEMDS lctl set_param fail_loc=0x80000145 @@ -1348,6 +1352,7 @@ test_40c() { run_test 40c "pdirops: link and others ==============" test_40d() { + remote_mds_nodsh && skip "remote MDS with nodsh" && return touch $DIR1/$tfile #define OBD_FAIL_ONCE|OBD_FAIL_MDS_PDO_LOCK 0x145 do_facet $SINGLEMDS lctl set_param fail_loc=0x80000145 @@ -1377,6 +1382,7 @@ test_40d() { run_test 40d "pdirops: unlink and others ==============" test_40e() { + remote_mds_nodsh && skip "remote MDS with nodsh" && return touch $DIR1/$tfile #define OBD_FAIL_ONCE|OBD_FAIL_MDS_PDO_LOCK 0x145 do_facet $SINGLEMDS lctl set_param fail_loc=0x80000145 @@ -3095,12 +3101,12 @@ test_80() { # give multiop a chance to open sleep 1 - $LFS mv -M $MDTIDX $DIR1/$tdir && + $LFS migrate -m $MDTIDX $DIR1/$tdir && error "migrate open files should failed with open files" kill -USR1 $pid - $LFS mv -M $MDTIDX $DIR1/$tdir || + $LFS migrate -m $MDTIDX $DIR1/$tdir || error "migrate remote dir error" echo "Finish migration, then checking.." @@ -3169,6 +3175,39 @@ test_82() { } run_test 82 "fsetxattr and fgetxattr on orphan files" +test_83() { + [ $MDSCOUNT -lt 2 ] && skip "needs >= 2 MDTs" && return + local pid1 + local pid2 + + ( + cd $DIR1 + while true; do + $LFS mkdir -i1 -c2 $tdir + rmdir $tdir + done + ) & + pid1=$! + echo "start pid $pid1 to create/unlink striped directory" + + # Access the directory at the same time + ( + cd $DIR2 + while true; do + stat $tdir > /dev/null 2>&1 + done + ) & + pid2=$! + echo "start pid $pid2 to stat striped directory" + + sleep 120 + kill $pid1 $pid2 + wait $pid1 $pid2 + + return 0 +} +run_test 83 "access striped directory while it is being created/unlinked" + log "cleanup: ======================================================" [ "$(mount | grep $MOUNT2)" ] && umount $MOUNT2