]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
selftests/mm: va_high_addr_switch return fail when either test failed
authorChunyu Hu <chuhu@redhat.com>
Sun, 21 Dec 2025 04:00:24 +0000 (12:00 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Wed, 21 Jan 2026 03:24:52 +0000 (19:24 -0800)
When the first test failed, and the hugetlb test passed, the result would
be pass, but we expect a fail.  Fix this issue by returning fail if either
is not KSFT_PASS.

Link: https://lkml.kernel.org/r/20251221040025.3159990-4-chuhu@redhat.com
Signed-off-by: Chunyu Hu <chuhu@redhat.com>
Reviewed-by: Luiz Capitulino <luizcap@redhat.com>
Cc: "David Hildenbrand (Red Hat)" <david@kernel.org>
Cc: Liam Howlett <liam.howlett@oracle.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
tools/testing/selftests/mm/va_high_addr_switch.c

index 02f290a69132797b2f4b759e1db94b7b43c85352..51401e081b209a80cd866019f098e897aec8fa2c 100644 (file)
@@ -322,7 +322,7 @@ static int supported_arch(void)
 
 int main(int argc, char **argv)
 {
-       int ret;
+       int ret, hugetlb_ret = KSFT_PASS;
 
        if (!supported_arch())
                return KSFT_SKIP;
@@ -331,6 +331,10 @@ int main(int argc, char **argv)
 
        ret = run_test(testcases, sz_testcases);
        if (argc == 2 && !strcmp(argv[1], "--run-hugetlb"))
-               ret = run_test(hugetlb_testcases, sz_hugetlb_testcases);
-       return ret;
+               hugetlb_ret = run_test(hugetlb_testcases, sz_hugetlb_testcases);
+
+       if (ret == KSFT_PASS && hugetlb_ret == KSFT_PASS)
+               return KSFT_PASS;
+       else
+               return KSFT_FAIL;
 }