v1: https://lore.kernel.org/linux-mm/[email protected]/
This series should be considered in conjunction with Qi's series [1]. Together, they ensure that page table ctor/dtor are called at all levels (PTE to PGD) and all architectures, where page tables are regular pages. Besides the improvement in accounting and general cleanup, this also create a single place where construction/destruction hooks can be called for all page tables, namely the now-generic pagetable_dtor() introduced by Qi, and __pagetable_ctor() introduced in this series. v2 is essentially v1 rebased on top of mm-unstable, which includes Qi's v4 series. A number of patches from v1 were dropped: * v1 patch 4 is superseded by patch 6 in Qi's series. * v1 patch 5 and 6 moved to Qi's series from v3 onwards. * v1 patch 7 is superseded by patch 4 in Qi's series. Changes from v1 in the remaining patches: * Patch 1 only introduces __pagetable_ctor() as there is now a single generic pagetable_dtor(). * Patch 3 and 6: in arch/m68k/mm/motorola.c, free_pointer_table() can now unconditionally call pagetable_dtor() since it is the same for all levels. * Patch 6 just uses pagetable_dtor() instead of introducing pagetable_pgd_dtor(). * Added Dave Hansen's Acked-by to all patches. - Kevin [1] https://lore.kernel.org/linux-mm/[email protected]/ --- Cc: Andrew Morton <[email protected]> Cc: Catalin Marinas <[email protected]> Cc: Dave Hansen <[email protected]> Cc: Linus Walleij <[email protected]> Cc: Andy Lutomirski <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: "Mike Rapoport (IBM)" <[email protected]> Cc: Ryan Roberts <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: Will Deacon <[email protected]> Cc: Matthew Wilcox <[email protected]> Cc: Qi Zheng <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] --- Kevin Brodsky (6): mm: Move common part of pagetable_*_ctor to helper parisc: mm: Ensure pagetable_pmd_[cd]tor are called m68k: mm: Add calls to pagetable_pmd_[cd]tor ARM: mm: Rename PGD helpers asm-generic: pgalloc: Provide generic __pgd_{alloc,free} mm: Introduce ctor/dtor at PGD level arch/alpha/mm/init.c | 2 +- arch/arc/include/asm/pgalloc.h | 9 ++---- arch/arm/mm/pgd.c | 16 +++++----- arch/arm64/mm/pgd.c | 4 +-- arch/csky/include/asm/pgalloc.h | 2 +- arch/hexagon/include/asm/pgalloc.h | 2 +- arch/loongarch/mm/pgtable.c | 7 ++--- arch/m68k/include/asm/mcf_pgalloc.h | 3 +- arch/m68k/include/asm/motorola_pgalloc.h | 6 ++-- arch/m68k/include/asm/sun3_pgalloc.h | 2 +- arch/m68k/mm/motorola.c | 21 +++++++++---- arch/microblaze/include/asm/pgalloc.h | 7 +---- arch/mips/include/asm/pgalloc.h | 6 ---- arch/mips/mm/pgtable.c | 8 ++--- arch/nios2/mm/pgtable.c | 3 +- arch/openrisc/include/asm/pgalloc.h | 6 ++-- arch/parisc/include/asm/pgalloc.h | 39 ++++++++---------------- arch/riscv/include/asm/pgalloc.h | 3 +- arch/s390/include/asm/pgalloc.h | 9 +++++- arch/um/kernel/mem.c | 7 ++--- arch/x86/mm/pgtable.c | 24 +++++++-------- arch/xtensa/include/asm/pgalloc.h | 2 +- include/asm-generic/pgalloc.h | 28 ++++++++++++++++- include/linux/mm.h | 31 ++++++++++--------- 24 files changed, 126 insertions(+), 121 deletions(-) base-commit: e2ce19225db5818f5dc22864cd225f8c425c3775 -- 2.47.0
