Re: [RFC PATCH v3 2/3] mm: Add PUD level pagetable account

From: Matthew Wilcox
Date: Sat Jul 02 2022 - 23:47:24 EST


On Thu, Jun 30, 2022 at 07:11:15PM +0800, Baolin Wang wrote:
> +++ b/arch/loongarch/include/asm/pgalloc.h
> @@ -89,10 +89,15 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address)
> static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long address)
> {
> pud_t *pud;
> + struct page *page;
>
> - pud = (pud_t *) __get_free_pages(GFP_KERNEL, PUD_ORDER);
> - if (pud)
> - pud_init((unsigned long)pud, (unsigned long)invalid_pmd_table);
> + page = alloc_pages(GFP_KERNEL, PUD_ORDER);

Argh. I just got rid of PMD_ORDER from PA-RISC. Now Loongstupid has
reintroduced it, and worse introduced PUD_ORDER. See commit
7bf82eb3873f.