[PATCH 2/2] selftests/mm: restore hidden hugetlb reservation scenarios

From: Song Hu

Date: Mon Jul 13 2026 - 22:16:55 EST


A stray 'continue' in the main loop of charge_reserved_hugetlb.sh made
the "more than reservation", "more than cgroup limit", and "multiple
cgroups" scenarios unreachable, so they never ran.

Remove it so the first two run again. The third,
run_multiple_cgroup_test(), is separately broken -- a backslash
line-continuation breaks its local declarations and its hugetlb
reservation accounting does not charge as expected -- and has never run
in CI; skip it explicitly with a comment until fixed. Also correct two
`[[ "$method" == 2"" ]]` typos (harmless empty-string concatenation)
to plain `2`.

Signed-off-by: Song Hu <husong@xxxxxxxxxx>
---
.../selftests/mm/charge_reserved_hugetlb.sh | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/tools/testing/selftests/mm/charge_reserved_hugetlb.sh b/tools/testing/selftests/mm/charge_reserved_hugetlb.sh
index a1cfd3a349db..18b2f2060c61 100755
--- a/tools/testing/selftests/mm/charge_reserved_hugetlb.sh
+++ b/tools/testing/selftests/mm/charge_reserved_hugetlb.sh
@@ -439,11 +439,11 @@ for populate in "" "-o"; do
fi

# Skip populated shmem tests. Doesn't seem to be supported.
- if [[ "$method" == 2"" ]] && [[ "$populate" == "-o" ]]; then
+ if [[ "$method" == 2 ]] && [[ "$populate" == "-o" ]]; then
continue
fi

- if [[ "$method" == 2"" ]] && [[ "$reserve" == "-n" ]]; then
+ if [[ "$method" == 2 ]] && [[ "$reserve" == "-n" ]]; then
continue
fi

@@ -496,7 +496,6 @@ for populate in "" "-o"; do
echo 'PASS'

cleanup
- continue
echo
echo
echo
@@ -530,6 +529,15 @@ for populate in "" "-o"; do

cleanup

+ # The "multiple cgroups" scenario (run_multiple_cgroup_test) is
+ # multiply broken and has never run in CI: a backslash
+ # line-continuation breaks its local declarations, it passes
+ # reservation sizes in bytes rather than pages (unlike
+ # run_test), and its assertions compare page counts to byte
+ # values. Skip it until properly rewritten; the two scenarios
+ # above are restored by this change.
+ continue
+
echo
echo
echo
--
2.43.0