selftests/vm: use memfd for hugetlb-madvise test
authorPeter Xu <peterx@redhat.com>
Fri, 14 Oct 2022 14:39:19 +0000 (10:39 -0400)
committerAndrew Morton <akpm@linux-foundation.org>
Wed, 9 Nov 2022 01:37:11 +0000 (17:37 -0800)
For dropping the hugetlb mountpoint in run_vmtests.sh.  Since no parameter
is needed, drop USAGE too.

Link: https://lkml.kernel.org/r/20221014143921.93887-3-peterx@redhat.com
Signed-off-by: Peter Xu <peterx@redhat.com>
Cc: Axel Rasmussen <axelrasmussen@google.com>
Cc: Mike Kravetz <mike.kravetz@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
tools/testing/selftests/vm/hugetlb-madvise.c

index 3c99431..f96435b 100644 (file)
@@ -12,6 +12,7 @@
  * directory.
  */
 
+#define _GNU_SOURCE
 #include <stdlib.h>
 #include <stdio.h>
 #include <unistd.h>
@@ -19,7 +20,6 @@
 #define __USE_GNU
 #include <fcntl.h>
 
-#define USAGE  "USAGE: %s <hugepagefile_name>\n"
 #define MIN_FREE_PAGES 20
 #define NR_HUGE_PAGES  10      /* common number of pages to map/allocate */
 
@@ -103,11 +103,6 @@ int main(int argc, char **argv)
        int fd;
        int ret;
 
-       if (argc != 2) {
-               printf(USAGE, argv[0]);
-               exit(1);
-       }
-
        huge_page_size = default_huge_page_size();
        if (!huge_page_size) {
                printf("Unable to determine huge page size, exiting!\n");
@@ -125,9 +120,9 @@ int main(int argc, char **argv)
                exit(1);
        }
 
-       fd = open(argv[1], O_CREAT | O_RDWR, 0755);
+       fd = memfd_create(argv[0], MFD_HUGETLB);
        if (fd < 0) {
-               perror("Open failed");
+               perror("memfd_create() failed");
                exit(1);
        }
 
@@ -406,6 +401,5 @@ int main(int argc, char **argv)
        (void)munmap(addr2, NR_HUGE_PAGES * huge_page_size);
 
        close(fd);
-       unlink(argv[1]);
        return 0;
 }