--- v8
+++ v3
@@ -10,22 +10,21 @@
ingrained and varied across archictectures, so there is still a lot of
work to be done before that can happen.
-This is rebased on mm-unstable.
+This is rebased on next-20230531.
-v8:
- Fix some compiler issues
+v3:
+ Got an Acked-by
+ Fixed the arm64 compilation issue
+ Rename some ptdesc utility functions to be pagetable_* instead
+ Add some comments to functions describing their uses
-v7:
- Drop s390 gmap ptdesc conversions - gmap is unecessary complication
- that can be dealt with later
- Be more thorough with ptdesc struct sanity checks and comments
- Rebase onto mm-unstable
-
-Vishal Moola (Oracle) (31):
+Vishal Moola (Oracle) (34):
mm: Add PAGE_TYPE_OP folio functions
+ s390: Use _pt_s390_gaddr for gmap address tracking
+ s390: Use pt_frag_refcount for pagetables
pgtable: Create struct ptdesc
mm: add utility functions for ptdesc
- mm: Convert pmd_pgtable_page() callers to use pmd_ptdesc()
+ mm: Convert pmd_pgtable_page() to pmd_ptdesc()
mm: Convert ptlock_alloc() to use ptdescs
mm: Convert ptlock_ptr() to use ptdescs
mm: Convert pmd_ptlock_init() to use ptdescs
@@ -35,6 +34,7 @@
mm: Create ptdesc equivalents for pgtable_{pte,pmd}_page_{ctor,dtor}
powerpc: Convert various functions to use ptdescs
x86: Convert various functions to use ptdescs
+ s390: Convert various gmap functions to use ptdescs
s390: Convert various pgalloc functions to use ptdescs
mm: Remove page table members from struct page
pgalloc: Convert various functions to use ptdescs
@@ -57,42 +57,43 @@
Documentation/mm/split_page_table_lock.rst | 12 +-
.../zh_CN/mm/split_page_table_lock.rst | 14 +-
arch/arm/include/asm/tlb.h | 12 +-
- arch/arm/mm/mmu.c | 7 +-
+ arch/arm/mm/mmu.c | 6 +-
arch/arm64/include/asm/tlb.h | 14 +-
arch/arm64/mm/mmu.c | 7 +-
arch/csky/include/asm/pgalloc.h | 4 +-
arch/hexagon/include/asm/pgalloc.h | 8 +-
- arch/loongarch/include/asm/pgalloc.h | 27 ++--
+ arch/loongarch/include/asm/pgalloc.h | 27 ++-
arch/loongarch/mm/pgtable.c | 7 +-
- arch/m68k/include/asm/mcf_pgalloc.h | 47 +++---
+ arch/m68k/include/asm/mcf_pgalloc.h | 41 ++--
arch/m68k/include/asm/sun3_pgalloc.h | 8 +-
arch/m68k/mm/motorola.c | 4 +-
- arch/mips/include/asm/pgalloc.h | 32 ++--
- arch/mips/mm/pgtable.c | 8 +-
+ arch/mips/include/asm/pgalloc.h | 31 +--
+ arch/mips/mm/pgtable.c | 7 +-
arch/nios2/include/asm/pgalloc.h | 8 +-
arch/openrisc/include/asm/pgalloc.h | 8 +-
arch/powerpc/mm/book3s64/mmu_context.c | 10 +-
- arch/powerpc/mm/book3s64/pgtable.c | 32 ++--
- arch/powerpc/mm/pgtable-frag.c | 58 +++----
+ arch/powerpc/mm/book3s64/pgtable.c | 32 +--
+ arch/powerpc/mm/pgtable-frag.c | 46 ++--
arch/riscv/include/asm/pgalloc.h | 8 +-
arch/riscv/mm/init.c | 16 +-
arch/s390/include/asm/pgalloc.h | 4 +-
arch/s390/include/asm/tlb.h | 4 +-
- arch/s390/mm/pgalloc.c | 128 +++++++--------
+ arch/s390/mm/gmap.c | 222 +++++++++++-------
+ arch/s390/mm/pgalloc.c | 126 +++++-----
arch/sh/include/asm/pgalloc.h | 9 +-
arch/sparc/mm/init_64.c | 17 +-
arch/sparc/mm/srmmu.c | 5 +-
- arch/um/include/asm/pgalloc.h | 18 +--
- arch/x86/mm/pgtable.c | 47 +++---
+ arch/um/include/asm/pgalloc.h | 18 +-
+ arch/x86/mm/pgtable.c | 46 ++--
arch/x86/xen/mmu_pv.c | 2 +-
- include/asm-generic/pgalloc.h | 88 +++++-----
- include/asm-generic/tlb.h | 11 ++
- include/linux/mm.h | 151 +++++++++++++-----
- include/linux/mm_types.h | 18 ---
- include/linux/page-flags.h | 30 +++-
- include/linux/pgtable.h | 80 ++++++++++
+ include/asm-generic/pgalloc.h | 62 +++--
+ include/asm-generic/tlb.h | 11 +
+ include/linux/mm.h | 155 ++++++++----
+ include/linux/mm_types.h | 14 --
+ include/linux/page-flags.h | 20 +-
+ include/linux/pgtable.h | 61 +++++
mm/memory.c | 8 +-
- 38 files changed, 586 insertions(+), 385 deletions(-)
+ 39 files changed, 665 insertions(+), 449 deletions(-)
--
2.40.1