From: Zi Yan <[email protected]>
Fixed two inputs to check_anon_huge() and one if condition, so the tests
work as expected.
Fixes: c07c343cda8e ("selftests/vm: dedup THP helpers")
Signed-off-by: Zi Yan <[email protected]>
Cc: Zach O'Keefe <[email protected]>
---
tools/testing/selftests/mm/split_huge_page_test.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/testing/selftests/mm/split_huge_page_test.c b/tools/testing/selftests/mm/split_huge_page_test.c
index 76e1c36dd9e5..b8558c7f1a39 100644
--- a/tools/testing/selftests/mm/split_huge_page_test.c
+++ b/tools/testing/selftests/mm/split_huge_page_test.c
@@ -106,7 +106,7 @@ void split_pmd_thp(void)
for (i = 0; i < len; i++)
one_page[i] = (char)i;
- if (!check_huge_anon(one_page, 1, pmd_pagesize)) {
+ if (!check_huge_anon(one_page, 4, pmd_pagesize)) {
printf("No THP is allocated\n");
exit(EXIT_FAILURE);
}
@@ -122,7 +122,7 @@ void split_pmd_thp(void)
}
- if (check_huge_anon(one_page, 0, pmd_pagesize)) {
+ if (!check_huge_anon(one_page, 0, pmd_pagesize)) {
printf("Still AnonHugePages not split\n");
exit(EXIT_FAILURE);
}
@@ -169,7 +169,7 @@ void split_pte_mapped_thp(void)
for (i = 0; i < len; i++)
one_page[i] = (char)i;
- if (!check_huge_anon(one_page, 1, pmd_pagesize)) {
+ if (!check_huge_anon(one_page, 4, pmd_pagesize)) {
printf("No THP is allocated\n");
exit(EXIT_FAILURE);
}
--
2.39.2
On Mar 06 11:09, Zi Yan wrote:
> From: Zi Yan <[email protected]>
>
> Fixed two inputs to check_anon_huge() and one if condition, so the tests
> work as expected.
>
> Fixes: c07c343cda8e ("selftests/vm: dedup THP helpers")
> Signed-off-by: Zi Yan <[email protected]>
> Cc: Zach O'Keefe <[email protected]>
> ---
> tools/testing/selftests/mm/split_huge_page_test.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/tools/testing/selftests/mm/split_huge_page_test.c b/tools/testing/selftests/mm/split_huge_page_test.c
> index 76e1c36dd9e5..b8558c7f1a39 100644
> --- a/tools/testing/selftests/mm/split_huge_page_test.c
> +++ b/tools/testing/selftests/mm/split_huge_page_test.c
> @@ -106,7 +106,7 @@ void split_pmd_thp(void)
> for (i = 0; i < len; i++)
> one_page[i] = (char)i;
>
> - if (!check_huge_anon(one_page, 1, pmd_pagesize)) {
> + if (!check_huge_anon(one_page, 4, pmd_pagesize)) {
> printf("No THP is allocated\n");
> exit(EXIT_FAILURE);
> }
> @@ -122,7 +122,7 @@ void split_pmd_thp(void)
> }
>
>
> - if (check_huge_anon(one_page, 0, pmd_pagesize)) {
> + if (!check_huge_anon(one_page, 0, pmd_pagesize)) {
> printf("Still AnonHugePages not split\n");
> exit(EXIT_FAILURE);
> }
> @@ -169,7 +169,7 @@ void split_pte_mapped_thp(void)
> for (i = 0; i < len; i++)
> one_page[i] = (char)i;
>
> - if (!check_huge_anon(one_page, 1, pmd_pagesize)) {
> + if (!check_huge_anon(one_page, 4, pmd_pagesize)) {
> printf("No THP is allocated\n");
> exit(EXIT_FAILURE);
> }
> --
> 2.39.2
>
Thanks Zi -- I had this in my TODO-log, but was slow to get it it -- apologies
for the clearly buggy code, and thanks for the cleanup. I've ran these tests to
confirm (as I should have previously), and it all looks good. Can have either my
Reviewed-by: Zach O'Keefe <[email protected]>
Tested-by: Zach O'Keefe <[email protected]>
I don't know which is more appropriate.
Best,
Zach
On 6 Mar 2023, at 13:31, Zach O'Keefe wrote:
> On Mar 06 11:09, Zi Yan wrote:
>> From: Zi Yan <[email protected]>
>>
>> Fixed two inputs to check_anon_huge() and one if condition, so the tests
>> work as expected.
>>
>> Fixes: c07c343cda8e ("selftests/vm: dedup THP helpers")
>> Signed-off-by: Zi Yan <[email protected]>
>> Cc: Zach O'Keefe <[email protected]>
>> ---
>> tools/testing/selftests/mm/split_huge_page_test.c | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/tools/testing/selftests/mm/split_huge_page_test.c b/tools/testing/selftests/mm/split_huge_page_test.c
>> index 76e1c36dd9e5..b8558c7f1a39 100644
>> --- a/tools/testing/selftests/mm/split_huge_page_test.c
>> +++ b/tools/testing/selftests/mm/split_huge_page_test.c
>> @@ -106,7 +106,7 @@ void split_pmd_thp(void)
>> for (i = 0; i < len; i++)
>> one_page[i] = (char)i;
>>
>> - if (!check_huge_anon(one_page, 1, pmd_pagesize)) {
>> + if (!check_huge_anon(one_page, 4, pmd_pagesize)) {
>> printf("No THP is allocated\n");
>> exit(EXIT_FAILURE);
>> }
>> @@ -122,7 +122,7 @@ void split_pmd_thp(void)
>> }
>>
>>
>> - if (check_huge_anon(one_page, 0, pmd_pagesize)) {
>> + if (!check_huge_anon(one_page, 0, pmd_pagesize)) {
>> printf("Still AnonHugePages not split\n");
>> exit(EXIT_FAILURE);
>> }
>> @@ -169,7 +169,7 @@ void split_pte_mapped_thp(void)
>> for (i = 0; i < len; i++)
>> one_page[i] = (char)i;
>>
>> - if (!check_huge_anon(one_page, 1, pmd_pagesize)) {
>> + if (!check_huge_anon(one_page, 4, pmd_pagesize)) {
>> printf("No THP is allocated\n");
>> exit(EXIT_FAILURE);
>> }
>> --
>> 2.39.2
>>
>
> Thanks Zi -- I had this in my TODO-log, but was slow to get it it -- apologies
> for the clearly buggy code, and thanks for the cleanup. I've ran these tests to
> confirm (as I should have previously), and it all looks good. Can have either my
>
> Reviewed-by: Zach O'Keefe <[email protected]>
> Tested-by: Zach O'Keefe <[email protected]>
>
Thanks.
--
Best Regards,
Yan, Zi
On 06.03.23 17:09, Zi Yan wrote:
> From: Zi Yan <[email protected]>
>
> Fixed two inputs to check_anon_huge() and one if condition, so the tests
> work as expected.
>
> Fixes: c07c343cda8e ("selftests/vm: dedup THP helpers")
> Signed-off-by: Zi Yan <[email protected]>
> Cc: Zach O'Keefe <[email protected]>
> ---
> tools/testing/selftests/mm/split_huge_page_test.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/tools/testing/selftests/mm/split_huge_page_test.c b/tools/testing/selftests/mm/split_huge_page_test.c
> index 76e1c36dd9e5..b8558c7f1a39 100644
> --- a/tools/testing/selftests/mm/split_huge_page_test.c
> +++ b/tools/testing/selftests/mm/split_huge_page_test.c
> @@ -106,7 +106,7 @@ void split_pmd_thp(void)
> for (i = 0; i < len; i++)
> one_page[i] = (char)i;
>
> - if (!check_huge_anon(one_page, 1, pmd_pagesize)) {
> + if (!check_huge_anon(one_page, 4, pmd_pagesize)) {
> printf("No THP is allocated\n");
> exit(EXIT_FAILURE);
> }
> @@ -122,7 +122,7 @@ void split_pmd_thp(void)
> }
>
>
> - if (check_huge_anon(one_page, 0, pmd_pagesize)) {
> + if (!check_huge_anon(one_page, 0, pmd_pagesize)) {
> printf("Still AnonHugePages not split\n");
> exit(EXIT_FAILURE);
> }
> @@ -169,7 +169,7 @@ void split_pte_mapped_thp(void)
> for (i = 0; i < len; i++)
> one_page[i] = (char)i;
>
> - if (!check_huge_anon(one_page, 1, pmd_pagesize)) {
> + if (!check_huge_anon(one_page, 4, pmd_pagesize)) {
> printf("No THP is allocated\n");
> exit(EXIT_FAILURE);
> }
Hard to read. It should probably be "get_huge_anon()" to then check for
the value in the caller manually. Negative value could be used as an
indicator for an error obtaining the value.
Anyhow, was briefly confused about the 4 ("magic value" also apprearing
in "size_t len = 4 * pmd_pagesize;") but it seems to be the right thing
to do.
Acked-by: David Hildenbrand <[email protected]>
--
Thanks,
David / dhildenb