Re: [PATCH 1/2] mm: rename mm->nr_ptes to mm->nr_pgtables

From: Cyrill Gorcunov
Date: Wed Jan 14 2015 - 04:45:49 EST


On Tue, Jan 13, 2015 at 01:49:10PM -0800, Dave Hansen wrote:
> On 01/13/2015 01:43 PM, Cyrill Gorcunov wrote:
> > On Tue, Jan 13, 2015 at 09:14:15PM +0200, Kirill A. Shutemov wrote:
> >> We're going to account pmd page tables too. Let's rename mm->nr_pgtables
> >> to something more generic.
> >>
> >> Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
> >> --- a/fs/proc/task_mmu.c
> >> +++ b/fs/proc/task_mmu.c
> >> @@ -64,7 +64,7 @@ void task_mem(struct seq_file *m, struct mm_struct *mm)
> >> data << (PAGE_SHIFT-10),
> >> mm->stack_vm << (PAGE_SHIFT-10), text, lib,
> >> (PTRS_PER_PTE * sizeof(pte_t) *
> >> - atomic_long_read(&mm->nr_ptes)) >> 10,
> >> + atomic_long_read(&mm->nr_pgtables)) >> 10,
> >
> > This implies that (PTRS_PER_PTE * sizeof(pte_t)) = (PTRS_PER_PMD * sizeof(pmd_t))
> > which might be true for all archs, right?
>
> I wonder if powerpc is OK on this front today. This diagram:
>
> http://linux-mm.org/PageTableStructure
>
> says that they use a 128-byte "pte" table when mapping 16M pages. I
> wonder if they bump mm->nr_ptes for these.

It looks like this doesn't matter. The statistics here prints the size
of summary memory occupied for pte_t entries, here PTRS_PER_PTE * sizeof(pte_t)
is only valid for, once we start accounting pmd into same counter it implies
that PTRS_PER_PTE == PTRS_PER_PMD, which is not true for all archs
(if I understand the idea of accounting here right).
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/