Re: [PATCH 3/3] mm: Add kernel PTE level pagetable pages account

From: Baolin Wang
Date: Thu Jul 07 2022 - 07:45:37 EST




On 7/6/2022 11:45 PM, Matthew Wilcox wrote:
On Wed, Jul 06, 2022 at 04:59:17PM +0800, Baolin Wang wrote:
Now the kernel PTE level ptes are always protected by mm->page_table_lock
instead of split pagetable lock, so the kernel PTE level pagetable pages
are not accounted. Especially the vmalloc()/vmap() can consume lots of
kernel pagetable, so to get an accurate pagetable accounting, calling new
helpers page_{set,clear}_pgtable() when allocating or freeing a kernel
PTE level pagetable page.

Meanwhile converting architectures to use corresponding generic PTE pagetable
allocation and freeing functions.

Note this patch only adds accounting to the page tables allocated after boot.

Signed-off-by: Baolin Wang <baolin.wang@xxxxxxxxxxxxxxxxx>
Reported-by: kernel test robot <oliver.sang@xxxxxxxxx>

What does this Reported-by: even mean? the kernel test robot told you
that the page tables weren't being accounted?

I fixed an issue reported by this robot. OK, I can remove the tag.

I don't understand why we want to start accounting kernel page tables.
an we have a *discussion* about that with a sensible thread name instead
of just trying to sneak it in as patch 3/3?

I think I have replied to you in below link [1]. The reason is we should keep consistent with PMD or PUD pagetable allocation.

[1] https://lore.kernel.org/all/68a5286b-7ff3-2c4e-1ab2-305e7860a2f3@xxxxxxxxxxxxxxxxx/