pxd_ERROR() macros have been provided by all platforms, which are very much identical and can be dropped off completely if these pgtable printing could be moved to callers in generic MM aka all pxd_clear_bad().
But first cleanups and re-organizations are required in some platforms that are using these macros internally. Afterwards [pte|pmd|pud|p4d|pgd]_ERROR() macros have been completely dropped from the entire tree. This series is based on v7.3-rc1 after the following patch and has also been built tested on multiple platforms. Changes in V1: - Moved ptval_to_str() and adjcent declarations inside <include/linux/pgtable.h> - Fixed type s/ptrval_to_str/ptval_to_str in [PATCH 1/8] - Dropped PTE_FMT from riscv platform - Added all tags received Changes in RFC V3: https://lore.kernel.org/all/[email protected]/ - Moved ptrval_to_str() as header in a separate patch - Stopped using pxd_ERROR() in generic MM in a separate patch - Dropped pxd_ERRO() macros from all platforms in a separate patch - Dropped print_bad_pte() and also cleaned up set_pte_phys() - Added some pr_error() messages in __get_pte_phys() - Cleaned up error messages and used ptrval_to_str() in platforms Changes in RFC V2: https://lore.kernel.org/all/[email protected]/ - Added clean up patches for platforms with existing pxd_ERROR() usage - Dropped __FILE__ and __LINE__ from all print sections per David Changes in RFC V1: https://lore.kernel.org/all/[email protected]/ Cc: David Hildenbrand (Arm) <[email protected]> Cc: Mike Rapoport (Microsoft) <[email protected]> Cc: Andrew Morton <[email protected]> Cc: Lorenzo Stoakes <[email protected]> Cc: Yoshinori Sato <[email protected]> Cc: Rich Felker <[email protected]> Cc: John Paul Adrian Glaubitz <[email protected]> Cc: "James E.J. Bottomley" <[email protected]> Cc: Helge Deller <[email protected]> Cc: Huacai Chen <[email protected]> Cc: WANG Xuerui <[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] Cc: [email protected] Cc: [email protected] Cc: [email protected] Anshuman Khandual (8): mm: Make ptval_to_str() generally available mm: Stop using pxd_ERROR() loongarch/mm: Stop using pte_ERROR() parisc/mm: Directly use generic [pmd|pgd]_clear_bad() sh/mm: Stop using pte_ERROR() sh/mm: Stop using [p4d|pud|pmd]_ERROR() sh/mm: Stop using pgd_ERROR() mm: Drop pxd_ERROR() arch/alpha/include/asm/pgtable.h | 7 ------- arch/arc/include/asm/pgtable-levels.h | 11 ---------- arch/arm/include/asm/pgtable.h | 7 ------- arch/arm/kernel/traps.c | 17 ---------------- arch/arm64/include/asm/pgtable.h | 15 -------------- arch/csky/include/asm/pgtable.h | 4 ---- arch/hexagon/include/asm/pgtable.h | 3 --- arch/loongarch/include/asm/pgtable.h | 13 ------------ arch/loongarch/mm/init.c | 4 +++- arch/m68k/include/asm/mcf_pgtable.h | 6 ------ arch/m68k/include/asm/motorola_pgtable.h | 8 -------- arch/m68k/include/asm/sun3_pgtable.h | 7 ------- arch/microblaze/include/asm/pgtable.h | 7 ------- arch/mips/include/asm/pgtable-32.h | 10 ---------- arch/mips/include/asm/pgtable-64.h | 13 ------------ arch/nios2/include/asm/pgtable.h | 7 ------- arch/openrisc/include/asm/pgtable.h | 7 ------- arch/parisc/include/asm/pgtable.h | 9 --------- arch/parisc/kernel/pci-dma.c | 6 ++---- arch/powerpc/include/asm/book3s/32/pgtable.h | 2 -- arch/powerpc/include/asm/book3s/64/pgtable.h | 7 ------- arch/powerpc/include/asm/nohash/32/pgtable.h | 2 -- .../include/asm/nohash/64/pgtable-4k.h | 3 --- arch/powerpc/include/asm/nohash/64/pgtable.h | 5 ----- arch/riscv/include/asm/page.h | 6 ------ arch/riscv/include/asm/pgtable-64.h | 9 --------- arch/riscv/include/asm/pgtable.h | 4 ---- arch/s390/include/asm/pgtable.h | 11 ---------- arch/sh/include/asm/pgtable-3level.h | 3 --- arch/sh/include/asm/pgtable_32.h | 13 ------------ arch/sh/mm/init.c | 16 ++++++++------- arch/sparc/include/asm/pgtable_32.h | 3 --- arch/sparc/include/asm/pgtable_64.h | 10 ---------- arch/um/include/asm/pgtable-2level.h | 7 ------- arch/um/include/asm/pgtable-4level.h | 13 ------------ arch/x86/include/asm/pgtable-2level.h | 5 ----- arch/x86/include/asm/pgtable-3level.h | 11 ---------- arch/x86/include/asm/pgtable_64.h | 18 ----------------- arch/xtensa/include/asm/pgtable.h | 4 ---- include/asm-generic/pgtable-nop4d.h | 1 - include/asm-generic/pgtable-nopmd.h | 1 - include/asm-generic/pgtable-nopud.h | 1 - include/linux/pgtable.h | 14 +++++++++++++ mm/memory.c | 15 +------------- mm/pgtable-generic.c | 20 +++++++++++++++---- 45 files changed, 45 insertions(+), 320 deletions(-) -- 2.43.0
