On 2025-12-20 23:00, Chunyu Hu wrote:
The va_high_addr_switch test requires 6 hugepages, not 5. If running the
test directly by: ./va_high_addr_switch.sh, the test will hit a mmap 'FAIL'
caused by not enough hugepages:
   ```
   mmap(addr_switch_hint - hugepagesize, 2*hugepagesize, MAP_HUGETLB): 
0x7f330f800000 - OK
   mmap(addr_switch_hint , 2*hugepagesize, MAP_FIXED | MAP_HUGETLB): 
0xffffffffffffffff - FAILED
   ```
The failure can't be hit if run the tests by running 'run_vmtests.sh -t
hugevm' because the nr_hugepages is set to 128 at the beginning of
run_vmtests.sh and va_high_addr_switch.sh skip the setup of nr_hugepages
because already enough.

Reviewed-by: Luiz Capitulino <[email protected]>


CC: Luiz Capitulino <[email protected]>
Fixes: d9d957bd7b61 ("selftests/mm: alloc hugepages in va_high_addr_switch 
test")
Signed-off-by: Chunyu Hu <[email protected]>
---
  tools/testing/selftests/mm/va_high_addr_switch.sh | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/mm/va_high_addr_switch.sh 
b/tools/testing/selftests/mm/va_high_addr_switch.sh
index f89fe078a8e6..a0c93d348b11 100755
--- a/tools/testing/selftests/mm/va_high_addr_switch.sh
+++ b/tools/testing/selftests/mm/va_high_addr_switch.sh
@@ -111,8 +111,8 @@ setup_nr_hugepages()
check_test_requirements
  save_nr_hugepages
-# 4 keep_mapped pages, and one for tmp usage
-setup_nr_hugepages 5
+# The HugeTLB tests require 6 pages
+setup_nr_hugepages 6
  ./va_high_addr_switch --run-hugetlb
  retcode=$?
  restore_nr_hugepages


Reply via email to