But again, if there are valid use cases then sure, let's make the code fully compatible with HUGETLB_PAGE_ORDER > MAX_ORDER.
Given that gigantic HugeTLB allocation can fallback on alloc_contig_pages()
or CMA if/when available, is there a real need for HUGETLB_PAGE_ORDER to be
upto MAX_ORDER, used as pageblock_order or as COMPACTION_HPAGE_ORDER ? With
gigantic HugeTLB pages being available, HUGETLB_PAGE_ORDER seems to be just
detached from the buddy allocator. But I am not sure, will keep looking.
Having HPAGE_PMD_ORDER >>= MAX_ORDER ("significantly larger") will make
it very unlikely that you are able to reliably allocate any huge pages
at all dynamically at runtime without CMA.
Gigantic pages are problematic by nature :)
--
Thanks,
David / dhildenb