On Tue, Feb 18, 2025 at 02:22:51PM -0500, Rafael Aquini wrote: > From: Rafael Aquini <[email protected]> > > 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. > > Fixes: 2e47a445d7b3 ("selftests/mm: run_vmtests.sh: fix hugetlb mem size > calculation") > Signed-off-by: Rafael Aquini <[email protected]>
Oops.. thanks! Reviewed-by: Peter Xu <[email protected]> -- Peter Xu

