Messages in this thread | | | Date | Fri, 3 Nov 2017 12:20:49 +0300 | From | "Kirill A. Shutemov" <> | Subject | Re: [PATCH] s390/mm: fix pud table accounting |
| |
On Fri, Nov 03, 2017 at 09:05:51AM +0000, Heiko Carstens wrote: > With "mm: account pud page tables" and "mm: consolidate page table > accounting" pud page table accounting was introduced which now results > in tons of warnings like this one on s390: > > BUG: non-zero pgtables_bytes on freeing mm: -16384 > > Reason for this are our run-time folded page tables: by default new > processes start with three page table levels where the allocated pgd > is the same as the first pud. In this case there won't ever be a pud > allocated and therefore mm_inc_nr_puds() will also never be called. > > However when freeing the address space free_pud_range() will call > exactly once mm_dec_nr_puds() which leads to misaccounting. > > Therefore call mm_inc_nr_puds() within init_new_context() to fix > this. This is the same like we have it already for processes that run > with two page table levels (aka compat processes). > > While at it also adjust the comment, since there is no "mm->nr_pmds" > anymore.
Thanks for tracking it down.
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
-- Kirill A. Shutemov
| |