linux/tools/testing
Rafael Aquini baa3782905 selftests/mm: run_vmtests.sh: fix half_ufd_size_MB calculation
commit 67a2f86846 upstream.

We noticed that uffd-stress test was always failing to run when invoked
for the hugetlb profiles on x86_64 systems with a processor count of 64 or
bigger:

  ...
  # ------------------------------------
  # running ./uffd-stress hugetlb 128 32
  # ------------------------------------
  # ERROR: invalid MiB (errno=9, @uffd-stress.c:459)
  ...
  # [FAIL]
  not ok 3 uffd-stress hugetlb 128 32 # exit=1
  ...

The problem boils down to how run_vmtests.sh (mis)calculates the size of
the region it feeds to uffd-stress.  The latter expects to see an amount
of MiB while the former is just giving out the number of free hugepages
halved down.  This measurement discrepancy ends up violating uffd-stress'
assertion on number of hugetlb pages allocated per CPU, causing it to bail
out with the error above.

This commit fixes that issue by adjusting run_vmtests.sh's
half_ufd_size_MB calculation so it properly renders the region size in
MiB, as expected, while maintaining all of its original constraints in
place.

Link: https://lkml.kernel.org/r/20250218192251.53243-1-aquini@redhat.com
Fixes: 2e47a445d7 ("selftests/mm: run_vmtests.sh: fix hugetlb mem size calculation")
Signed-off-by: Rafael Aquini <raquini@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-03-28 22:03:30 +01:00
..
crypto/chacha20-s390 tools/testing/crypto: Use vzalloc instead of vmalloc+memset 2022-07-05 14:46:36 +02:00
cxl cxl/test: Improve init-order fidelity relative to real-world systems 2024-10-25 16:07:04 -05:00
fault-injection failcmd: make failcmd.sh executable 2024-09-01 20:43:32 -07:00
ktest ktest.pl: Check kernelrelease return in get_version 2025-02-08 09:58:13 +01:00
kunit kunit: tool: Build compile_commands.json 2024-09-12 09:52:36 -06:00
memblock memblock: updates for 6.12-rc1 2024-09-25 11:35:19 -07:00
nvdimm testing: nvdimm: Add MODULE_DESCRIPTION() macros 2024-06-17 18:43:08 -05:00
radix-tree maple_tree: add regression test for spanning store bug 2024-10-17 08:35:10 -07:00
scatterlist tools/testing/scatterlist: add missing defines 2022-01-30 09:56:58 +02:00
selftests selftests/mm: run_vmtests.sh: fix half_ufd_size_MB calculation 2025-03-28 22:03:30 +01:00
shared tools: fix atomic_set() definition to set the value correctly 2025-01-23 17:23:01 +01:00
vma tools: fix atomic_set() definition to set the value correctly 2025-01-23 17:23:01 +01:00
vsock vsock/test: fix parameter types in SO_VM_SOCKETS_* calls 2024-12-14 20:03:09 +01:00