selftests/mm: cow: print ksft header before printing anything else
Doing a ksft_print_msg() before the ksft_print_header() seems to confuse
the ksft framework in a strange way: running the test on the cmdline
results in the expected output.
But piping the output somewhere else, results in some odd output,
whereby we repeatedly get the same info printed:
# [INFO] detected THP size: 2048 KiB
# [INFO] detected hugetlb page size: 2048 KiB
# [INFO] detected hugetlb page size: 1048576 KiB
# [INFO] huge zeropage is enabled
TAP version 13
1..190
# [INFO] Anonymous memory tests in private mappings
# [RUN] Basic COW after fork() ... with base page
# [INFO] detected THP size: 2048 KiB
# [INFO] detected hugetlb page size: 2048 KiB
# [INFO] detected hugetlb page size: 1048576 KiB
# [INFO] huge zeropage is enabled
TAP version 13
1..190
# [INFO] Anonymous memory tests in private mappings
# [RUN] Basic COW after fork() ... with base page
ok 1 No leak from parent into child
# [RUN] Basic COW after fork() ... with swapped out base page
# [INFO] detected THP size: 2048 KiB
# [INFO] detected hugetlb page size: 2048 KiB
# [INFO] detected hugetlb page size: 1048576 KiB
# [INFO] huge zeropage is enabled
Doing the ksft_print_header() first seems to resolve that and gives us
the output we expect:
TAP version 13
# [INFO] detected THP size: 2048 KiB
# [INFO] detected hugetlb page size: 2048 KiB
# [INFO] detected hugetlb page size: 1048576 KiB
# [INFO] huge zeropage is enabled
1..190
# [INFO] Anonymous memory tests in private mappings
# [RUN] Basic COW after fork() ... with base page
ok 1 No leak from parent into child
# [RUN] Basic COW after fork() ... with swapped out base page
ok 2 No leak from parent into child
# [RUN] Basic COW after fork() ... with THP
ok 3 No leak from parent into child
# [RUN] Basic COW after fork() ... with swapped-out THP
ok 4 No leak from parent into child
# [RUN] Basic COW after fork() ... with PTE-mapped THP
ok 5 No leak from parent into child
Link: https://lkml.kernel.org/r/20231206103558.38040-1-david@redhat.com
Fixes: f4b5fd6946
("selftests/vm: anon_cow: THP tests")
Signed-off-by: David Hildenbrand <david@redhat.com>
Reported-by: Nico Pache <npache@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
d3bb89ea9c
commit
a6fcd57cf2
@ -1680,6 +1680,8 @@ int main(int argc, char **argv)
|
|||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
|
ksft_print_header();
|
||||||
|
|
||||||
pagesize = getpagesize();
|
pagesize = getpagesize();
|
||||||
thpsize = read_pmd_pagesize();
|
thpsize = read_pmd_pagesize();
|
||||||
if (thpsize)
|
if (thpsize)
|
||||||
@ -1689,7 +1691,6 @@ int main(int argc, char **argv)
|
|||||||
ARRAY_SIZE(hugetlbsizes));
|
ARRAY_SIZE(hugetlbsizes));
|
||||||
detect_huge_zeropage();
|
detect_huge_zeropage();
|
||||||
|
|
||||||
ksft_print_header();
|
|
||||||
ksft_set_plan(ARRAY_SIZE(anon_test_cases) * tests_per_anon_test_case() +
|
ksft_set_plan(ARRAY_SIZE(anon_test_cases) * tests_per_anon_test_case() +
|
||||||
ARRAY_SIZE(anon_thp_test_cases) * tests_per_anon_thp_test_case() +
|
ARRAY_SIZE(anon_thp_test_cases) * tests_per_anon_thp_test_case() +
|
||||||
ARRAY_SIZE(non_anon_test_cases) * tests_per_non_anon_test_case());
|
ARRAY_SIZE(non_anon_test_cases) * tests_per_non_anon_test_case());
|
||||||
|
Loading…
Reference in New Issue
Block a user