On 30.04.24 18:14, Frank van der Linden wrote:
Align the CMA area for hugetlb gigantic pages to their size, not the size that they can be demoted to. Otherwise there might be misaligned sections at the start and end of the CMA area that will never be used for hugetlb page allocations. Signed-off-by: Frank van der Linden <fvdl@xxxxxxxxxx> Cc: Roman Gushchin <roman.gushchin@xxxxxxxxx> Fixes: a01f43901cfb ("hugetlb: be sure to free demoted CMA pages to CMA") --- mm/hugetlb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 5dc3f5ea3a2e..cfe7b025c576 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -7794,7 +7794,7 @@ void __init hugetlb_cma_reserve(int order) * huge page demotion. */ res = cma_declare_contiguous_nid(0, size, 0, - PAGE_SIZE << HUGETLB_PAGE_ORDER, + PAGE_SIZE << order, HUGETLB_PAGE_ORDER, false, name, &hugetlb_cma[nid], nid); if (res) {
I was wondering how that worked when reviewing your other patch. Wondering why we never got a BUG report, maybe we were always lucky about the alignment we actually got?
We round up size to PAGE_SIZE << order, so that's the alignment we need. Reviewed-by: David Hildenbrand <david@xxxxxxxxxx> -- Cheers, David / dhildenb