On Thu, Dec 03, 2020 at 04:33:10PM -0800, James Bottomley wrote: > These platforms define PMD_ORDER in asm/pgtable.h I think that's the real problem, though. #define PGD_ORDER 1 /* Number of pages per pgd */ #define PMD_ORDER 1 /* Number of pages per pmd */ #define PGD_ALLOC_ORDER (2 + 1) /* first pgd contains pmd */ #else #define PGD_ORDER 1 /* Number of pages per pgd */ #define PGD_ALLOC_ORDER (PGD_ORDER + 1) That should clearly be PMD_ALLOC_ORDER, not PMD_ORDER. Or even PAGES_PER_PMD like the comment calls it, because I really think that doing an order-3 (8 pages) allocation for the PGD is wrong.