On 07/01/26 10:18 pm, Kevin Brodsky wrote:
> Make sure pagemap_ioctl exits with an appropriate value:
>
> * If the tests are run, call ksft_finished() to report the right
> status instead of reporting PASS unconditionally.
>
> * Report SKIP if userfaultfd isn't available (in line with other
> tests)
>
> * Report FAIL if we failed to open /proc/self/pagemap, as this file
> has been added a long time ago and doesn't depend on any CONFIG
> option (returning -EINVAL from main() is meaningless)
>
> Cc: Usama Anjum <Usama.Anjum@arm.com>
> Reviewed-by: Ryan Roberts <ryan.roberts@arm.com>
> Reviewed-by: Mark Brown <broonie@kernel.org>
> Acked-by: David Hildenbrand (Red Hat) <david@kernel.org>
> Signed-off-by: Kevin Brodsky <kevin.brodsky@arm.com>
Reviewed-by: Dev Jain <dev.jain@arm.com>
> ---
> tools/testing/selftests/mm/pagemap_ioctl.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/tools/testing/selftests/mm/pagemap_ioctl.c b/tools/testing/selftests/mm/pagemap_ioctl.c
> index 80d7c391f8f5..7b214e8755f7 100644
> --- a/tools/testing/selftests/mm/pagemap_ioctl.c
> +++ b/tools/testing/selftests/mm/pagemap_ioctl.c
> @@ -1551,7 +1551,7 @@ int main(int __attribute__((unused)) argc, char *argv[])
> ksft_print_header();
>
> if (init_uffd())
> - ksft_exit_pass();
> + ksft_exit_skip("Failed to initialize userfaultfd\n");
>
> ksft_set_plan(117);
>
> @@ -1560,7 +1560,7 @@ int main(int __attribute__((unused)) argc, char *argv[])
>
> pagemap_fd = open(PAGEMAP, O_RDONLY);
> if (pagemap_fd < 0)
> - return -EINVAL;
> + ksft_exit_fail_msg("Failed to open " PAGEMAP "\n");
>
> /* 1. Sanity testing */
> sanity_tests_sd();
> @@ -1732,5 +1732,5 @@ int main(int __attribute__((unused)) argc, char *argv[])
> zeropfn_tests();
>
> close(pagemap_fd);
> - ksft_exit_pass();
> + ksft_finished();
> }