Whamcloud - gitweb
LU-18226 tests: allow small margin for unevicted pages 37/56637/2
authorAndreas Dilger <adilger@whamcloud.com>
Wed, 9 Oct 2024 23:33:16 +0000 (17:33 -0600)
committerOleg Drokin <green@whamcloud.com>
Fri, 18 Oct 2024 18:42:12 +0000 (18:42 +0000)
Allow a small margin for unevictable pages in case of memory pressure.

Test-Parameters: trivial
Fixes: 2a3ec2fea3 ("LU-17463 osc: add support for unevictable mlock()ed pages")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I3f1cbacfdf53f217d9ebcbeb1b34693d27f70901
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56637
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Colin Faber <cfaber@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/tests/sanity.sh

index 8825f32..a6ad1d1 100755 (executable)
@@ -32151,7 +32151,7 @@ test_600b() {
                  awk '/^used_mb/ { print $2 }')
        unevict_mb=$($LCTL get_param -n llite.*.unevict_cached_mb)
        (( $used_mb == 0 )) || error "used_mb is $used_mb, expected 0"
-       (( $unevict_mb == $size_mb )) ||
+       (( $unevict_mb >= $size_mb - 1)) || # allow a margin of 1 page
                error "unevict_mb is $unevict_mb, expected $size_mb"
 }
 run_test 600b "mlock a file (via vmtouch) larger than max_cached_mb"
@@ -32189,10 +32189,10 @@ test_600c() {
        local cached_mb=$($LCTL get_param llite.*.max_cached_mb |
                          awk '/^used_mb/ { print $2 }')
 
-       [ $cached_mb -eq 0 ] || error "expected used_mb 0 got $cached_mb"
+       (( $cached_mb == 0 )) || error "expected used_mb 0 got $cached_mb"
        cached_mb=$($LCTL get_param llite.*.max_cached_mb |
                    awk '/^unevict_mb/ { print $2 }')
-       [ $cached_mb -eq 64 ] || error "expected unevict_mb 64 got $cached_mb"
+       (( $cached_mb == 64 )) || error "expected unevict_mb 64 got $cached_mb"
 
        vmtouch -vt $file2 || error "failed to vmtouch $file2"
        echo 3 > /proc/sys/vm/drop_caches
@@ -32206,10 +32206,10 @@ test_600c() {
        $LCTL set_param llite.*.unevict_cached_mb=clear
        cached_mb=$($LCTL get_param llite.*.max_cached_mb |
                    awk '/^used_mb/ { print $2 }')
-       [ $cached_mb -eq 0 ] || error "expected used_mb 0 got $cached_mb"
+       (( $cached_mb == 0 )) || error "expected used_mb 0 got $cached_mb"
        cached_mb=$($LCTL get_param llite.*.max_cached_mb |
                    awk '/^unevict_mb/ { print $2 }')
-       [ $cached_mb -eq 0 ] || error "expected unevict_mb 0 got $cached_mb"
+       (( $cached_mb == 0 )) || error "expected unevict_mb 0 got $cached_mb"
 }
 run_test 600c "Test I/O when mlocked page count > @max_cached_mb"