Commit 1e17a24e authored by Peter Xu's avatar Peter Xu Committed by Linus Torvalds

userfaultfd/selftests: fix retval check for userfaultfd_open()

userfaultfd_open() returns 1 for errors rather than negatives.  Fix it on
all the callers so when UFFDIO_API failed the test will bail out.

Link: https://lkml.kernel.org/r/20201208024709.7701-3-peterx@redhat.comSigned-off-by: default avatarPeter Xu <peterx@redhat.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: Mike Rapoport <rppt@linux.vnet.ibm.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 164c50be
...@@ -1029,7 +1029,7 @@ static int userfaultfd_zeropage_test(void) ...@@ -1029,7 +1029,7 @@ static int userfaultfd_zeropage_test(void)
if (uffd_test_ops->release_pages(area_dst)) if (uffd_test_ops->release_pages(area_dst))
return 1; return 1;
if (userfaultfd_open(0) < 0) if (userfaultfd_open(0))
return 1; return 1;
uffdio_register.range.start = (unsigned long) area_dst; uffdio_register.range.start = (unsigned long) area_dst;
uffdio_register.range.len = nr_pages * page_size; uffdio_register.range.len = nr_pages * page_size;
...@@ -1079,7 +1079,7 @@ static int userfaultfd_events_test(void) ...@@ -1079,7 +1079,7 @@ static int userfaultfd_events_test(void)
features = UFFD_FEATURE_EVENT_FORK | UFFD_FEATURE_EVENT_REMAP | features = UFFD_FEATURE_EVENT_FORK | UFFD_FEATURE_EVENT_REMAP |
UFFD_FEATURE_EVENT_REMOVE; UFFD_FEATURE_EVENT_REMOVE;
if (userfaultfd_open(features) < 0) if (userfaultfd_open(features))
return 1; return 1;
fcntl(uffd, F_SETFL, uffd_flags | O_NONBLOCK); fcntl(uffd, F_SETFL, uffd_flags | O_NONBLOCK);
...@@ -1151,7 +1151,7 @@ static int userfaultfd_sig_test(void) ...@@ -1151,7 +1151,7 @@ static int userfaultfd_sig_test(void)
return 1; return 1;
features = UFFD_FEATURE_EVENT_FORK|UFFD_FEATURE_SIGBUS; features = UFFD_FEATURE_EVENT_FORK|UFFD_FEATURE_SIGBUS;
if (userfaultfd_open(features) < 0) if (userfaultfd_open(features))
return 1; return 1;
fcntl(uffd, F_SETFL, uffd_flags | O_NONBLOCK); fcntl(uffd, F_SETFL, uffd_flags | O_NONBLOCK);
...@@ -1231,7 +1231,7 @@ static int userfaultfd_stress(void) ...@@ -1231,7 +1231,7 @@ static int userfaultfd_stress(void)
if (!area_dst) if (!area_dst)
return 1; return 1;
if (userfaultfd_open(0) < 0) if (userfaultfd_open(0))
return 1; return 1;
count_verify = malloc(nr_pages * sizeof(unsigned long long)); count_verify = malloc(nr_pages * sizeof(unsigned long long));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment