[PATCH v2 2/3] selftests/mm: Skip uffd hugetlb tests with insufficient hugepages

From: Nico Pache
Date: Wed Mar 06 2024 - 17:38:49 EST


Now that run_vmtests.sh does not guarantee that the correct hugepage
count is available, add a check inside the userfaultfd hugetlb test to
verify the nr_hugepages count before continuing.

Signed-off-by: Nico Pache <npache@xxxxxxxxxx>
---
tools/testing/selftests/mm/uffd-stress.c | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/tools/testing/selftests/mm/uffd-stress.c b/tools/testing/selftests/mm/uffd-stress.c
index 7e83829bbb335..1165446f10883 100644
--- a/tools/testing/selftests/mm/uffd-stress.c
+++ b/tools/testing/selftests/mm/uffd-stress.c
@@ -441,6 +441,12 @@ int main(int argc, char **argv)
parse_test_type_arg(argv[1]);
bytes = atol(argv[2]) * 1024 * 1024;

+ if (test_type == TEST_HUGETLB &&
+ get_free_hugepages() < bytes / page_size) {
+ printf("skip: Skipping userfaultfd... not enough hugepages\n");
+ return KSFT_SKIP;
+ }
+
nr_cpus = sysconf(_SC_NPROCESSORS_ONLN);

nr_pages_per_cpu = bytes / page_size / nr_cpus;
--
2.44.0