diff mbox series

fixup! selftests/mm: run_vmtests.sh: fix hugetlb mem size calculation

Message ID 20240403200324.1603493-1-peterx@redhat.com (mailing list archive)
State New
Headers show
Series fixup! selftests/mm: run_vmtests.sh: fix hugetlb mem size calculation | expand

Commit Message

Peter Xu April 3, 2024, 8:03 p.m. UTC
From: Peter Xu <peterx@redhat.com>

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@arm.com

Cc: Muhammad Usama Anjum <usama.anjum@collabora.com>
Cc: David Hildenbrand <david@redhat.com>
Cc: Muchun Song <muchun.song@linux.dev>
Reported-by: Ryan Roberts <ryan.roberts@arm.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
---
 tools/testing/selftests/mm/run_vmtests.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Ryan Roberts April 4, 2024, 7:39 a.m. UTC | #1
On 03/04/2024 21:03, peterx@redhat.com wrote:
> From: Peter Xu <peterx@redhat.com>
> 
> 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@arm.com
> 
> Cc: Muhammad Usama Anjum <usama.anjum@collabora.com>
> Cc: David Hildenbrand <david@redhat.com>
> Cc: Muchun Song <muchun.song@linux.dev>
> Reported-by: Ryan Roberts <ryan.roberts@arm.com>
> Signed-off-by: Peter Xu <peterx@redhat.com>

All passing again for me:

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

> ---
>  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
diff mbox series

Patch

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