Whamcloud - gitweb
LU-1884 build: fix 'resource leak' errors
[fs/lustre-release.git] / lustre / tests / sanityn.sh
index 4897ed7..4729806 100644 (file)
@@ -330,7 +330,8 @@ run_test 15 "test out-of-space with multiple writers ==========="
 test_16() {
        rm -f $MOUNT1/fsxfile
        lfs setstripe $MOUNT1/fsxfile -c -1 # b=10919
-       fsx -c 50 -p 100 -N 2500 -l $((SIZE * 256)) -S 0 $MOUNT1/fsxfile $MOUNT2/fsxfile
+       fsx -c 50 -p 100 -N 2500 -l $((SIZE * 256)) -S 0 $FSXOPT \
+               $MOUNT1/fsxfile $MOUNT2/fsxfile
 }
 run_test 16 "2500 iterations of dual-mount fsx ================="
 
@@ -898,38 +899,44 @@ test_35() { # bug 17645
 run_test 35 "-EINTR cp_ast vs. bl_ast race does not evict client"
 
 test_36() { #bug 16417
-    local SIZE
-    local SIZE_B
-    local i
+       local SIZE
+       local SIZE_B
+       local i
 
-    mkdir -p $DIR1/$tdir
-    $LFS setstripe -c -1 $DIR1/$tdir
-    i=0
-    SIZE=50
-    let SIZE_B=SIZE*1024*1024
-
-    while [ $i -le 10 ]; do
-        lctl mark "start test"
-        local before=$($LFS df | awk '{if ($1 ~/^filesystem/) {print $5; exit} }')
-        dd if=/dev/zero of=$DIR1/$tdir/file000 bs=1M count=$SIZE
-        sync
-        sleep 1
-        local after_dd=$($LFS df | awk '{if ($1 ~/^filesystem/) {print $5; exit} }')
-        multiop_bg_pause $DIR2/$tdir/file000 O_r${SIZE_B}c || return 3
-        read_pid=$!
-        rm -f $DIR1/$tdir/file000
-        kill -USR1 $read_pid
-        wait $read_pid
-        sleep 1
-        local after=$($LFS df | awk '{if ($1 ~/^filesystem/) {print $5; exit} }')
-        echo "*** cycle($i) *** before($before):after_dd($after_dd):after($after)"
-        # this free space! not used
-        if [ $after_dd -ge $after ]; then
-            error "space leaked"
-            return 1;
-        fi
-        let i=i+1
-            done
+       mkdir -p $DIR1/$tdir
+       $LFS setstripe -c -1 $DIR1/$tdir
+       i=0
+       SIZE=50
+       let SIZE_B=SIZE*1024*1024
+
+       while [ $i -le 10 ]; do
+               lctl mark "start test"
+               local before=$($LFS df | awk '{if ($1 ~/^filesystem/) \
+                                              {print $5; exit} }')
+               dd if=/dev/zero of=$DIR1/$tdir/file000 bs=1M count=$SIZE
+               sync          # sync data from client's cache
+               sync_all_data # sync data from server's cache (delayed
+                             # allocation)
+               sleep 1
+               local after_dd=$($LFS df | awk '{if ($1 ~/^filesystem/) \
+                                                {print $5; exit} }')
+               multiop_bg_pause $DIR2/$tdir/file000 O_r${SIZE_B}c || return 3
+               read_pid=$!
+               rm -f $DIR1/$tdir/file000
+               kill -USR1 $read_pid
+               wait $read_pid
+               sleep 1
+               local after=$($LFS df | awk '{if ($1 ~/^filesystem/) \
+                                             {print $5; exit} }')
+               echo "*** cycle($i) *** before($before) after_dd($after_dd)" \
+                       "after($after)"
+               # this free space! not used
+               if [ $after_dd -ge $after ]; then
+                       error "space leaked"
+                       return 1;
+               fi
+               let i=i+1
+       done
 }
 run_test 36 "handle ESTALE/open-unlink corectly"
 
@@ -1887,6 +1894,8 @@ test_50() {
 run_test 50 "osc lvb attrs: enqueue vs. CP AST =============="
 
 test_60() {
+       [[ $(lustre_version_code $SINGLEMDS) -ge $(version_code 2.3.0) ]] ||
+       { skip "Need MDS version at least 2.3.0"; return; }
        # Create a file
        mkdir -p $DIR1/$tdir
        file1=$DIR1/$tdir/file