selftests: cgroup: fix test_kmem_basic less than error
authorLucas Karpinski <lkarpins@redhat.com>
Fri, 4 Aug 2023 19:35:29 +0000 (15:35 -0400)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 21 Aug 2023 20:07:21 +0000 (13:07 -0700)
test_kmem_basic creates 100,000 negative dentries, with each one mapping
to a slab object.  After memory.high is set, these are reclaimed through
the shrink_slab function call which reclaims all 100,000 entries.  The
test passes the majority of the time because when slab1 or current is
calculated, it is often above 0, however, 0 is also an acceptable value.

Link: https://lkml.kernel.org/r/7d6gcuyzdjcice6qbphrmpmv5skr5jtglg375unnjxqhstvhxc@qkn6dw6bao6v
Signed-off-by: Lucas Karpinski <lkarpins@redhat.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Muchun Song <muchun.song@linux.dev>
Cc: Roman Gushchin <roman.gushchin@linux.dev>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Tejun Heo <tj@kernel.org>
Cc: Zefan Li <lizefan.x@bytedance.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
tools/testing/selftests/cgroup/test_kmem.c

index 1b2cec9..ed2e50b 100644 (file)
@@ -75,11 +75,11 @@ static int test_kmem_basic(const char *root)
        sleep(1);
 
        slab1 = cg_read_key_long(cg, "memory.stat", "slab ");
-       if (slab1 <= 0)
+       if (slab1 < 0)
                goto cleanup;
 
        current = cg_read_long(cg, "memory.current");
-       if (current <= 0)
+       if (current < 0)
                goto cleanup;
 
        if (slab1 < slab0 / 2 && current < slab0 / 2)