Re: [PATCH] fixup! selftests/mm: run_vmtests.sh: fix hugetlb mem size calculation

From: Ryan Roberts
Date: Thu Apr 04 2024 - 03:39:52 EST


On 03/04/2024 21:03, peterx@xxxxxxxxxx wrote:
> From: Peter Xu <peterx@xxxxxxxxxx>
>
> Fix up a breakage on uffd hugetlb test due to removal of a temp variable,
> as reported by Ryan [1].
>
> Instead of using the previous calculation, use the largest we can
> have (which is put in freepgs) and cut it into half for userfault tests.
>
> [1] https://lore.kernel.org/r/1c20b717-c5b5-4bdf-8fcd-d46db135b7fa@xxxxxxx
>
> Cc: Muhammad Usama Anjum <usama.anjum@xxxxxxxxxxxxx>
> Cc: David Hildenbrand <david@xxxxxxxxxx>
> Cc: Muchun Song <muchun.song@xxxxxxxxx>
> Reported-by: Ryan Roberts <ryan.roberts@xxxxxxx>
> Signed-off-by: Peter Xu <peterx@xxxxxxxxxx>

All passing again for me:

Tested-by: Ryan Roberts <ryan.roberts@xxxxxxx>

> ---
> tools/testing/selftests/mm/run_vmtests.sh | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/mm/run_vmtests.sh b/tools/testing/selftests/mm/run_vmtests.sh
> index b1b78e45d613..223c2304f885 100755
> --- a/tools/testing/selftests/mm/run_vmtests.sh
> +++ b/tools/testing/selftests/mm/run_vmtests.sh
> @@ -298,7 +298,8 @@ CATEGORY="userfaultfd" run_test ./uffd-unit-tests
> uffd_stress_bin=./uffd-stress
> CATEGORY="userfaultfd" run_test ${uffd_stress_bin} anon 20 16
> # Hugetlb tests require source and destination huge pages. Pass in half
> -# the size ($half_ufd_size_MB), which is used for *each*.
> +# the size of the free pages we have, which is used for *each*.
> +half_ufd_size_MB=$((freepgs / 2))
> CATEGORY="userfaultfd" run_test ${uffd_stress_bin} hugetlb "$half_ufd_size_MB" 32
> CATEGORY="userfaultfd" run_test ${uffd_stress_bin} hugetlb-private "$half_ufd_size_MB" 32
> CATEGORY="userfaultfd" run_test ${uffd_stress_bin} shmem 20 16