selftests: mm: hugepage-mmap: conform to TAP format output
authorMuhammad Usama Anjum <usama.anjum@collabora.com>
Tue, 2 Jan 2024 05:32:22 +0000 (10:32 +0500)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 5 Jan 2024 18:17:48 +0000 (10:17 -0800)
Conform the layout, informational and status messages to TAP.  No
functional change is intended other than the layout of output messages.

Link: https://lkml.kernel.org/r/20240102053223.2099572-1-usama.anjum@collabora.com
Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
Cc: Shuah Khan <shuah@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
tools/testing/selftests/mm/hugepage-mmap.c

index 955ef87f382cb05c508d8990bf152be853511b8f..267eea2e0e0bff91af5709465a06a51369bb9deb 100644 (file)
@@ -22,6 +22,7 @@
 #include <unistd.h>
 #include <sys/mman.h>
 #include <fcntl.h>
+#include "../kselftest.h"
 
 #define LENGTH (256UL*1024*1024)
 #define PROTECTION (PROT_READ | PROT_WRITE)
@@ -37,7 +38,7 @@
 
 static void check_bytes(char *addr)
 {
-       printf("First hex is %x\n", *((unsigned int *)addr));
+       ksft_print_msg("First hex is %x\n", *((unsigned int *)addr));
 }
 
 static void write_bytes(char *addr)
@@ -55,7 +56,7 @@ static int read_bytes(char *addr)
        check_bytes(addr);
        for (i = 0; i < LENGTH; i++)
                if (*(addr + i) != (char)i) {
-                       printf("Mismatch at %lu\n", i);
+                       ksft_print_msg("Error: Mismatch at %lu\n", i);
                        return 1;
                }
        return 0;
@@ -66,20 +67,20 @@ int main(void)
        void *addr;
        int fd, ret;
 
+       ksft_print_header();
+       ksft_set_plan(1);
+
        fd = memfd_create("hugepage-mmap", MFD_HUGETLB);
-       if (fd < 0) {
-               perror("memfd_create() failed");
-               exit(1);
-       }
+       if (fd < 0)
+               ksft_exit_fail_msg("memfd_create() failed: %s\n", strerror(errno));
 
        addr = mmap(ADDR, LENGTH, PROTECTION, FLAGS, fd, 0);
        if (addr == MAP_FAILED) {
-               perror("mmap");
                close(fd);
-               exit(1);
+               ksft_exit_fail_msg("mmap(): %s\n", strerror(errno));
        }
 
-       printf("Returned address is %p\n", addr);
+       ksft_print_msg("Returned address is %p\n", addr);
        check_bytes(addr);
        write_bytes(addr);
        ret = read_bytes(addr);
@@ -87,5 +88,7 @@ int main(void)
        munmap(addr, LENGTH);
        close(fd);
 
-       return ret;
+       ksft_test_result(!ret, "Read same data\n");
+
+       ksft_exit(!ret);
 }