* [PATCH V3 0/5] mm: Rework generic PTDUMP configs
@ 2025-02-26 12:23 Anshuman Khandual
2025-02-26 12:24 ` [PATCH V3 1/5] configs: Drop GENERIC_PTDUMP from debug.config Anshuman Khandual
` (4 more replies)
0 siblings, 5 replies; 12+ messages in thread
From: Anshuman Khandual @ 2025-02-26 12:23 UTC (permalink / raw)
To: linux-mm
Cc: Anshuman Khandual, Andrew Morton, Mark Rutland, Christophe Leroy,
kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev,
linux-riscv, linux-s390
The series reworks generic PTDUMP configs before eventually renaming them
after some basic clean ups first. This is derived after splitting changes
from the following patch.
https://lore.kernel.org/all/20250205050039.1506377-1-anshuman.khandual@arm.com/
This series applies on v6.14-rc3 and has been tested on arm64. Although it
also builds on other platforms as well.
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: kvmarm@lists.linux.dev
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-doc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linuxppc-dev@lists.ozlabs.org
Cc: linux-riscv@lists.infradead.org
Cc: linux-s390@vger.kernel.org
Cc: linux-mm@kvack.org
Cc: linux-kernel@vger.kernel.org
Changes in V3:
- Added CONFIG_PTDUMP_DEBUGFS in mpc885_ads_defconfig per Christophe
- Added back MMU dependency for CONFIG_ARCH_HAS_PTDUMP on riscv platform
Changes in V2:
https://lore.kernel.org/all/20250217042220.32920-1-anshuman.khandual@arm.com/
- Dropped the patch "mm: Make GENERIC_PTDUMP dependent on MMU"
- Dropped GENERIC_PTDUMP from mpc885_ads_defconfig
- Dropped PTDUMP config options from ptdump.rst
Changes in V1:
https://lore.kernel.org/all/20250213040934.3245750-1-anshuman.khandual@arm.com/
Anshuman Khandual (5):
configs: Drop GENERIC_PTDUMP from debug.config
arch/powerpc: Drop GENERIC_PTDUMP from mpc885_ads_defconfig
docs: arm64: Drop PTDUMP config options from ptdump.rst
mm: Make DEBUG_WX depdendent on GENERIC_PTDUMP
mm: Rename GENERIC_PTDUMP and PTDUMP_CORE
Documentation/arch/arm64/ptdump.rst | 2 --
arch/arm64/Kconfig | 2 +-
arch/arm64/include/asm/ptdump.h | 4 ++--
arch/arm64/kvm/Kconfig | 4 ++--
arch/arm64/mm/Makefile | 2 +-
arch/powerpc/Kconfig | 2 +-
arch/powerpc/configs/mpc885_ads_defconfig | 2 +-
arch/powerpc/mm/Makefile | 2 +-
arch/riscv/Kconfig | 2 +-
arch/riscv/mm/Makefile | 2 +-
arch/s390/Kconfig | 2 +-
arch/s390/mm/Makefile | 2 +-
arch/x86/Kconfig | 2 +-
arch/x86/Kconfig.debug | 2 +-
arch/x86/mm/Makefile | 2 +-
kernel/configs/debug.config | 1 -
mm/Kconfig.debug | 11 ++++++-----
mm/Makefile | 2 +-
18 files changed, 23 insertions(+), 25 deletions(-)
--
2.25.1
^ permalink raw reply [flat|nested] 12+ messages in thread* [PATCH V3 1/5] configs: Drop GENERIC_PTDUMP from debug.config 2025-02-26 12:23 [PATCH V3 0/5] mm: Rework generic PTDUMP configs Anshuman Khandual @ 2025-02-26 12:24 ` Anshuman Khandual 2025-02-26 12:24 ` [PATCH V3 2/5] arch/powerpc: Drop GENERIC_PTDUMP from mpc885_ads_defconfig Anshuman Khandual ` (3 subsequent siblings) 4 siblings, 0 replies; 12+ messages in thread From: Anshuman Khandual @ 2025-02-26 12:24 UTC (permalink / raw) To: linux-mm Cc: Anshuman Khandual, Andrew Morton, Mark Rutland, Christophe Leroy, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Steven Price The platforms that support GENERIC_PTDUMP select the config explicitly. But enabling this feature on platforms that don't really support - does nothing or might cause a build failure. Hence just drop GENERIC_PTDUMP from generic debug.config Cc: Andrew Morton <akpm@linux-foundation.org> Cc: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org Reviewed-by: Steven Price <steven.price@arm.com> Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> --- kernel/configs/debug.config | 1 - 1 file changed, 1 deletion(-) diff --git a/kernel/configs/debug.config b/kernel/configs/debug.config index 20552f163930..8aafd050b754 100644 --- a/kernel/configs/debug.config +++ b/kernel/configs/debug.config @@ -73,7 +73,6 @@ CONFIG_DEBUG_VM=y CONFIG_DEBUG_VM_PGFLAGS=y CONFIG_DEBUG_VM_RB=y CONFIG_DEBUG_VM_VMACACHE=y -CONFIG_GENERIC_PTDUMP=y CONFIG_KASAN=y CONFIG_KASAN_GENERIC=y CONFIG_KASAN_INLINE=y -- 2.25.1 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH V3 2/5] arch/powerpc: Drop GENERIC_PTDUMP from mpc885_ads_defconfig 2025-02-26 12:23 [PATCH V3 0/5] mm: Rework generic PTDUMP configs Anshuman Khandual 2025-02-26 12:24 ` [PATCH V3 1/5] configs: Drop GENERIC_PTDUMP from debug.config Anshuman Khandual @ 2025-02-26 12:24 ` Anshuman Khandual 2025-02-26 12:31 ` Christophe Leroy 2025-02-26 12:24 ` [PATCH V3 3/5] docs: arm64: Drop PTDUMP config options from ptdump.rst Anshuman Khandual ` (2 subsequent siblings) 4 siblings, 1 reply; 12+ messages in thread From: Anshuman Khandual @ 2025-02-26 12:24 UTC (permalink / raw) To: linux-mm Cc: Anshuman Khandual, Andrew Morton, Mark Rutland, Christophe Leroy, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Madhavan Srinivasan, Michael Ellerman, Nicholas Piggin GENERIC_PTDUMP gets selected on powerpc explicitly and hence can be dropped off from mpc885_ads_defconfig. Replace with CONFIG_PTDUMP_DEBUGFS instead. Cc: Madhavan Srinivasan <maddy@linux.ibm.com> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Nicholas Piggin <npiggin@gmail.com> Cc: Christophe Leroy <christophe.leroy@csgroup.eu> Cc: linuxppc-dev@lists.ozlabs.org Cc: linux-kernel@vger.kernel.org Fixes: e084728393a5 ("powerpc/ptdump: Convert powerpc to GENERIC_PTDUMP") Suggested-by: Christophe Leroy <christophe.leroy@csgroup.eu> Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> --- arch/powerpc/configs/mpc885_ads_defconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/powerpc/configs/mpc885_ads_defconfig b/arch/powerpc/configs/mpc885_ads_defconfig index 77306be62e9e..129355f87f80 100644 --- a/arch/powerpc/configs/mpc885_ads_defconfig +++ b/arch/powerpc/configs/mpc885_ads_defconfig @@ -78,4 +78,4 @@ CONFIG_DEBUG_VM_PGTABLE=y CONFIG_DETECT_HUNG_TASK=y CONFIG_BDI_SWITCH=y CONFIG_PPC_EARLY_DEBUG=y -CONFIG_GENERIC_PTDUMP=y +CONFIG_PTDUMP_DEBUGFS=y -- 2.25.1 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH V3 2/5] arch/powerpc: Drop GENERIC_PTDUMP from mpc885_ads_defconfig 2025-02-26 12:24 ` [PATCH V3 2/5] arch/powerpc: Drop GENERIC_PTDUMP from mpc885_ads_defconfig Anshuman Khandual @ 2025-02-26 12:31 ` Christophe Leroy 0 siblings, 0 replies; 12+ messages in thread From: Christophe Leroy @ 2025-02-26 12:31 UTC (permalink / raw) To: Anshuman Khandual, linux-mm Cc: Andrew Morton, Mark Rutland, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Madhavan Srinivasan, Michael Ellerman, Nicholas Piggin Le 26/02/2025 à 13:24, Anshuman Khandual a écrit : > GENERIC_PTDUMP gets selected on powerpc explicitly and hence can be dropped > off from mpc885_ads_defconfig. Replace with CONFIG_PTDUMP_DEBUGFS instead. > > Cc: Madhavan Srinivasan <maddy@linux.ibm.com> > Cc: Michael Ellerman <mpe@ellerman.id.au> > Cc: Nicholas Piggin <npiggin@gmail.com> > Cc: Christophe Leroy <christophe.leroy@csgroup.eu> > Cc: linuxppc-dev@lists.ozlabs.org > Cc: linux-kernel@vger.kernel.org > Fixes: e084728393a5 ("powerpc/ptdump: Convert powerpc to GENERIC_PTDUMP") > Suggested-by: Christophe Leroy <christophe.leroy@csgroup.eu> > Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu> > --- > arch/powerpc/configs/mpc885_ads_defconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/powerpc/configs/mpc885_ads_defconfig b/arch/powerpc/configs/mpc885_ads_defconfig > index 77306be62e9e..129355f87f80 100644 > --- a/arch/powerpc/configs/mpc885_ads_defconfig > +++ b/arch/powerpc/configs/mpc885_ads_defconfig > @@ -78,4 +78,4 @@ CONFIG_DEBUG_VM_PGTABLE=y > CONFIG_DETECT_HUNG_TASK=y > CONFIG_BDI_SWITCH=y > CONFIG_PPC_EARLY_DEBUG=y > -CONFIG_GENERIC_PTDUMP=y > +CONFIG_PTDUMP_DEBUGFS=y ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH V3 3/5] docs: arm64: Drop PTDUMP config options from ptdump.rst 2025-02-26 12:23 [PATCH V3 0/5] mm: Rework generic PTDUMP configs Anshuman Khandual 2025-02-26 12:24 ` [PATCH V3 1/5] configs: Drop GENERIC_PTDUMP from debug.config Anshuman Khandual 2025-02-26 12:24 ` [PATCH V3 2/5] arch/powerpc: Drop GENERIC_PTDUMP from mpc885_ads_defconfig Anshuman Khandual @ 2025-02-26 12:24 ` Anshuman Khandual 2025-02-26 19:45 ` Catalin Marinas 2025-02-26 12:24 ` [PATCH V3 4/5] mm: Make DEBUG_WX depdendent on GENERIC_PTDUMP Anshuman Khandual 2025-02-26 12:24 ` [PATCH V3 5/5] mm: Rename GENERIC_PTDUMP and PTDUMP_CORE Anshuman Khandual 4 siblings, 1 reply; 12+ messages in thread From: Anshuman Khandual @ 2025-02-26 12:24 UTC (permalink / raw) To: linux-mm Cc: Anshuman Khandual, Andrew Morton, Mark Rutland, Christophe Leroy, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Catalin Marinas, Will Deacon, Jonathan Corbet, Steven Price Both GENERIC_PTDUMP and PTDUMP_CORE are not user selectable config options. Just drop these from documentation. Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will@kernel.org> Cc: Jonathan Corbet <corbet@lwn.net> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-doc@vger.kernel.org Cc: linux-kernel@vger.kernel.org Suggested-by: Steven Price <steven.price@arm.com> Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> --- Documentation/arch/arm64/ptdump.rst | 2 -- 1 file changed, 2 deletions(-) diff --git a/Documentation/arch/arm64/ptdump.rst b/Documentation/arch/arm64/ptdump.rst index 5dcfc5d7cddf..51eb902ba41a 100644 --- a/Documentation/arch/arm64/ptdump.rst +++ b/Documentation/arch/arm64/ptdump.rst @@ -22,8 +22,6 @@ offlining of memory being accessed by the ptdump code. In order to dump the kernel page tables, enable the following configurations and mount debugfs:: - CONFIG_GENERIC_PTDUMP=y - CONFIG_PTDUMP_CORE=y CONFIG_PTDUMP_DEBUGFS=y mount -t debugfs nodev /sys/kernel/debug -- 2.25.1 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH V3 3/5] docs: arm64: Drop PTDUMP config options from ptdump.rst 2025-02-26 12:24 ` [PATCH V3 3/5] docs: arm64: Drop PTDUMP config options from ptdump.rst Anshuman Khandual @ 2025-02-26 19:45 ` Catalin Marinas 0 siblings, 0 replies; 12+ messages in thread From: Catalin Marinas @ 2025-02-26 19:45 UTC (permalink / raw) To: Anshuman Khandual Cc: linux-mm, Andrew Morton, Mark Rutland, Christophe Leroy, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Will Deacon, Jonathan Corbet, Steven Price On Wed, Feb 26, 2025 at 05:54:02PM +0530, Anshuman Khandual wrote: > Both GENERIC_PTDUMP and PTDUMP_CORE are not user selectable config options. > Just drop these from documentation. > > Cc: Catalin Marinas <catalin.marinas@arm.com> > Cc: Will Deacon <will@kernel.org> > Cc: Jonathan Corbet <corbet@lwn.net> > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-doc@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > Suggested-by: Steven Price <steven.price@arm.com> > Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> Acked-by: Catalin Marinas <catalin.marinas@arm.com> ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH V3 4/5] mm: Make DEBUG_WX depdendent on GENERIC_PTDUMP 2025-02-26 12:23 [PATCH V3 0/5] mm: Rework generic PTDUMP configs Anshuman Khandual ` (2 preceding siblings ...) 2025-02-26 12:24 ` [PATCH V3 3/5] docs: arm64: Drop PTDUMP config options from ptdump.rst Anshuman Khandual @ 2025-02-26 12:24 ` Anshuman Khandual 2025-02-26 12:31 ` Christophe Leroy 2025-02-26 12:24 ` [PATCH V3 5/5] mm: Rename GENERIC_PTDUMP and PTDUMP_CORE Anshuman Khandual 4 siblings, 1 reply; 12+ messages in thread From: Anshuman Khandual @ 2025-02-26 12:24 UTC (permalink / raw) To: linux-mm Cc: Anshuman Khandual, Andrew Morton, Mark Rutland, Christophe Leroy, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Steven Price DEBUG_WX selects PTDUMP_CORE without even ensuring that the given platform implements GENERIC_PTDUMP. This problem has been latent until now, as all the platforms subscribing ARCH_HAS_DEBUG_WX also subscribe GENERIC_PTDUMP. Cc: Andrew Morton <akpm@linux-foundation.org> Cc: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org Reviewed-by: Steven Price <steven.price@arm.com> Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> --- mm/Kconfig.debug | 1 + 1 file changed, 1 insertion(+) diff --git a/mm/Kconfig.debug b/mm/Kconfig.debug index 41a58536531d..a51a1149909a 100644 --- a/mm/Kconfig.debug +++ b/mm/Kconfig.debug @@ -186,6 +186,7 @@ config ARCH_HAS_DEBUG_WX config DEBUG_WX bool "Warn on W+X mappings at boot" depends on ARCH_HAS_DEBUG_WX + depends on GENERIC_PTDUMP depends on MMU select PTDUMP_CORE help -- 2.25.1 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH V3 4/5] mm: Make DEBUG_WX depdendent on GENERIC_PTDUMP 2025-02-26 12:24 ` [PATCH V3 4/5] mm: Make DEBUG_WX depdendent on GENERIC_PTDUMP Anshuman Khandual @ 2025-02-26 12:31 ` Christophe Leroy 0 siblings, 0 replies; 12+ messages in thread From: Christophe Leroy @ 2025-02-26 12:31 UTC (permalink / raw) To: Anshuman Khandual, linux-mm Cc: Andrew Morton, Mark Rutland, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Steven Price Le 26/02/2025 à 13:24, Anshuman Khandual a écrit : > DEBUG_WX selects PTDUMP_CORE without even ensuring that the given platform > implements GENERIC_PTDUMP. This problem has been latent until now, as all > the platforms subscribing ARCH_HAS_DEBUG_WX also subscribe GENERIC_PTDUMP. > > Cc: Andrew Morton <akpm@linux-foundation.org> > Cc: linux-mm@kvack.org > Cc: linux-kernel@vger.kernel.org > Reviewed-by: Steven Price <steven.price@arm.com> > Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu> > --- > mm/Kconfig.debug | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/mm/Kconfig.debug b/mm/Kconfig.debug > index 41a58536531d..a51a1149909a 100644 > --- a/mm/Kconfig.debug > +++ b/mm/Kconfig.debug > @@ -186,6 +186,7 @@ config ARCH_HAS_DEBUG_WX > config DEBUG_WX > bool "Warn on W+X mappings at boot" > depends on ARCH_HAS_DEBUG_WX > + depends on GENERIC_PTDUMP > depends on MMU > select PTDUMP_CORE > help ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH V3 5/5] mm: Rename GENERIC_PTDUMP and PTDUMP_CORE 2025-02-26 12:23 [PATCH V3 0/5] mm: Rework generic PTDUMP configs Anshuman Khandual ` (3 preceding siblings ...) 2025-02-26 12:24 ` [PATCH V3 4/5] mm: Make DEBUG_WX depdendent on GENERIC_PTDUMP Anshuman Khandual @ 2025-02-26 12:24 ` Anshuman Khandual 2025-02-26 12:33 ` Christophe Leroy 2025-02-26 19:53 ` Catalin Marinas 4 siblings, 2 replies; 12+ messages in thread From: Anshuman Khandual @ 2025-02-26 12:24 UTC (permalink / raw) To: linux-mm Cc: Anshuman Khandual, Andrew Morton, Mark Rutland, Christophe Leroy, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Catalin Marinas, Will Deacon, Jonathan Corbet, Marc Zyngier, Michael Ellerman, Nicholas Piggin, Paul Walmsley, Palmer Dabbelt, Heiko Carstens, Vasily Gorbik, Thomas Gleixner, Ingo Molnar Platforms subscribe into generic ptdump implementation via GENERIC_PTDUMP. But generic ptdump gets enabled via PTDUMP_CORE. These configs combination is confusing as they sound very similar and does not differentiate between platform's feature subscription and feature enablement for ptdump. Rename the configs as ARCH_HAS_PTDUMP and PTDUMP making it more clear and improve readability. Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will@kernel.org> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Marc Zyngier <maz@kernel.org> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Nicholas Piggin <npiggin@gmail.com> Cc: Paul Walmsley <paul.walmsley@sifive.com> Cc: Palmer Dabbelt <palmer@dabbelt.com> Cc: Heiko Carstens <hca@linux.ibm.com> Cc: Vasily Gorbik <gor@linux.ibm.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-doc@vger.kernel.org Cc: linux-kernel@vger.kernel.org Cc: kvmarm@lists.linux.dev Cc: linuxppc-dev@lists.ozlabs.org Cc: linux-riscv@lists.infradead.org Cc: linux-s390@vger.kernel.org Cc: linux-mm@kvack.org Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> --- arch/arm64/Kconfig | 2 +- arch/arm64/include/asm/ptdump.h | 4 ++-- arch/arm64/kvm/Kconfig | 4 ++-- arch/arm64/mm/Makefile | 2 +- arch/powerpc/Kconfig | 2 +- arch/powerpc/mm/Makefile | 2 +- arch/riscv/Kconfig | 2 +- arch/riscv/mm/Makefile | 2 +- arch/s390/Kconfig | 2 +- arch/s390/mm/Makefile | 2 +- arch/x86/Kconfig | 2 +- arch/x86/Kconfig.debug | 2 +- arch/x86/mm/Makefile | 2 +- mm/Kconfig.debug | 12 ++++++------ mm/Makefile | 2 +- 15 files changed, 22 insertions(+), 22 deletions(-) diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index 940343beb3d4..5cf688ee01b7 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig @@ -41,6 +41,7 @@ config ARM64 select ARCH_HAS_NMI_SAFE_THIS_CPU_OPS select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE select ARCH_HAS_NONLEAF_PMD_YOUNG if ARM64_HAFT + select ARCH_HAS_PTDUMP select ARCH_HAS_PTE_DEVMAP select ARCH_HAS_PTE_SPECIAL select ARCH_HAS_HW_PTE_YOUNG @@ -157,7 +158,6 @@ config ARM64 select GENERIC_IRQ_SHOW_LEVEL select GENERIC_LIB_DEVMEM_IS_ALLOWED select GENERIC_PCI_IOMAP - select GENERIC_PTDUMP select GENERIC_SCHED_CLOCK select GENERIC_SMP_IDLE_THREAD select GENERIC_TIME_VSYSCALL diff --git a/arch/arm64/include/asm/ptdump.h b/arch/arm64/include/asm/ptdump.h index 6cf4aae05219..b2931d1ae0fb 100644 --- a/arch/arm64/include/asm/ptdump.h +++ b/arch/arm64/include/asm/ptdump.h @@ -7,7 +7,7 @@ #include <linux/ptdump.h> -#ifdef CONFIG_PTDUMP_CORE +#ifdef CONFIG_PTDUMP #include <linux/mm_types.h> #include <linux/seq_file.h> @@ -70,6 +70,6 @@ static inline void ptdump_debugfs_register(struct ptdump_info *info, #else static inline void note_page(struct ptdump_state *pt_st, unsigned long addr, int level, u64 val) { } -#endif /* CONFIG_PTDUMP_CORE */ +#endif /* CONFIG_PTDUMP */ #endif /* __ASM_PTDUMP_H */ diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig index ead632ad01b4..096e45acadb2 100644 --- a/arch/arm64/kvm/Kconfig +++ b/arch/arm64/kvm/Kconfig @@ -71,8 +71,8 @@ config PTDUMP_STAGE2_DEBUGFS depends on KVM depends on DEBUG_KERNEL depends on DEBUG_FS - depends on GENERIC_PTDUMP - select PTDUMP_CORE + depends on ARCH_HAS_PTDUMP + select PTDUMP default n help Say Y here if you want to show the stage-2 kernel pagetables diff --git a/arch/arm64/mm/Makefile b/arch/arm64/mm/Makefile index fc92170a8f37..c26489cf96cd 100644 --- a/arch/arm64/mm/Makefile +++ b/arch/arm64/mm/Makefile @@ -5,7 +5,7 @@ obj-y := dma-mapping.o extable.o fault.o init.o \ context.o proc.o pageattr.o fixmap.o obj-$(CONFIG_ARM64_CONTPTE) += contpte.o obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o -obj-$(CONFIG_PTDUMP_CORE) += ptdump.o +obj-$(CONFIG_PTDUMP) += ptdump.o obj-$(CONFIG_PTDUMP_DEBUGFS) += ptdump_debugfs.o obj-$(CONFIG_TRANS_TABLE) += trans_pgd.o obj-$(CONFIG_TRANS_TABLE) += trans_pgd-asm.o diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index 424f188e62d9..6f1ae41dcf85 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig @@ -148,6 +148,7 @@ config PPC select ARCH_HAS_PHYS_TO_DMA select ARCH_HAS_PMEM_API select ARCH_HAS_PREEMPT_LAZY + select ARCH_HAS_PTDUMP select ARCH_HAS_PTE_DEVMAP if PPC_BOOK3S_64 select ARCH_HAS_PTE_SPECIAL select ARCH_HAS_SCALED_CPUTIME if VIRT_CPU_ACCOUNTING_NATIVE && PPC_BOOK3S_64 @@ -206,7 +207,6 @@ config PPC select GENERIC_IRQ_SHOW select GENERIC_IRQ_SHOW_LEVEL select GENERIC_PCI_IOMAP if PCI - select GENERIC_PTDUMP select GENERIC_SMP_IDLE_THREAD select GENERIC_TIME_VSYSCALL select GENERIC_VDSO_TIME_NS diff --git a/arch/powerpc/mm/Makefile b/arch/powerpc/mm/Makefile index 0fe2f085c05a..8c1582b2987d 100644 --- a/arch/powerpc/mm/Makefile +++ b/arch/powerpc/mm/Makefile @@ -15,5 +15,5 @@ obj-$(CONFIG_NUMA) += numa.o obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o obj-$(CONFIG_NOT_COHERENT_CACHE) += dma-noncoherent.o obj-$(CONFIG_PPC_COPRO_BASE) += copro_fault.o -obj-$(CONFIG_PTDUMP_CORE) += ptdump/ +obj-$(CONFIG_PTDUMP) += ptdump/ obj-$(CONFIG_KASAN) += kasan/ diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig index 7612c52e9b1e..353cf41d01f4 100644 --- a/arch/riscv/Kconfig +++ b/arch/riscv/Kconfig @@ -43,6 +43,7 @@ config RISCV select ARCH_HAS_PMEM_API select ARCH_HAS_PREEMPT_LAZY select ARCH_HAS_PREPARE_SYNC_CORE_CMD + select ARCH_HAS_PTDUMP if MMU select ARCH_HAS_PTE_DEVMAP if 64BIT && MMU select ARCH_HAS_PTE_SPECIAL select ARCH_HAS_SET_DIRECT_MAP if MMU @@ -112,7 +113,6 @@ config RISCV select GENERIC_IRQ_SHOW_LEVEL select GENERIC_LIB_DEVMEM_IS_ALLOWED select GENERIC_PCI_IOMAP - select GENERIC_PTDUMP if MMU select GENERIC_SCHED_CLOCK select GENERIC_SMP_IDLE_THREAD select GENERIC_TIME_VSYSCALL if MMU && 64BIT diff --git a/arch/riscv/mm/Makefile b/arch/riscv/mm/Makefile index cbe4d775ef56..b916a68d324a 100644 --- a/arch/riscv/mm/Makefile +++ b/arch/riscv/mm/Makefile @@ -19,7 +19,7 @@ obj-y += context.o obj-y += pmem.o obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o -obj-$(CONFIG_PTDUMP_CORE) += ptdump.o +obj-$(CONFIG_PTDUMP) += ptdump.o obj-$(CONFIG_KASAN) += kasan_init.o ifdef CONFIG_KASAN diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig index 9c9ec08d78c7..dd9dd2f8e673 100644 --- a/arch/s390/Kconfig +++ b/arch/s390/Kconfig @@ -96,6 +96,7 @@ config S390 select ARCH_HAS_MEM_ENCRYPT select ARCH_HAS_NMI_SAFE_THIS_CPU_OPS select ARCH_HAS_PREEMPT_LAZY + select ARCH_HAS_PTDUMP select ARCH_HAS_PTE_SPECIAL select ARCH_HAS_SCALED_CPUTIME select ARCH_HAS_SET_DIRECT_MAP @@ -163,7 +164,6 @@ config S390 select GENERIC_CPU_VULNERABILITIES select GENERIC_ENTRY select GENERIC_GETTIMEOFDAY - select GENERIC_PTDUMP select GENERIC_SMP_IDLE_THREAD select GENERIC_TIME_VSYSCALL select GENERIC_VDSO_TIME_NS diff --git a/arch/s390/mm/Makefile b/arch/s390/mm/Makefile index f6c2db7a8669..9726b91fe7e4 100644 --- a/arch/s390/mm/Makefile +++ b/arch/s390/mm/Makefile @@ -9,6 +9,6 @@ obj-y += page-states.o pageattr.o pgtable.o pgalloc.o extable.o obj-$(CONFIG_CMM) += cmm.o obj-$(CONFIG_DEBUG_VIRTUAL) += physaddr.o obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o -obj-$(CONFIG_PTDUMP_CORE) += dump_pagetables.o +obj-$(CONFIG_PTDUMP) += dump_pagetables.o obj-$(CONFIG_PGSTE) += gmap.o obj-$(CONFIG_PFAULT) += pfault.o diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index be2c311f5118..39ecafffc7e3 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -26,6 +26,7 @@ config X86_64 depends on 64BIT # Options that are inherently 64-bit kernel only: select ARCH_HAS_GIGANTIC_PAGE + select ARCH_HAS_PTDUMP select ARCH_SUPPORTS_INT128 if CC_HAS_INT128 select ARCH_SUPPORTS_PER_VMA_LOCK select ARCH_SUPPORTS_HUGE_PFNMAP if TRANSPARENT_HUGEPAGE @@ -174,7 +175,6 @@ config X86 select GENERIC_IRQ_RESERVATION_MODE select GENERIC_IRQ_SHOW select GENERIC_PENDING_IRQ if SMP - select GENERIC_PTDUMP select GENERIC_SMP_IDLE_THREAD select GENERIC_TIME_VSYSCALL select GENERIC_GETTIMEOFDAY diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug index 1eb4d23cdaae..c95c3aaadf97 100644 --- a/arch/x86/Kconfig.debug +++ b/arch/x86/Kconfig.debug @@ -59,7 +59,7 @@ config EARLY_PRINTK_USB_XDBC config EFI_PGT_DUMP bool "Dump the EFI pagetable" depends on EFI - select PTDUMP_CORE + select PTDUMP help Enable this if you want to dump the EFI page table before enabling virtual mode. This can be used to debug miscellaneous diff --git a/arch/x86/mm/Makefile b/arch/x86/mm/Makefile index 690fbf48e853..e0c99a8760ca 100644 --- a/arch/x86/mm/Makefile +++ b/arch/x86/mm/Makefile @@ -39,7 +39,7 @@ CFLAGS_fault.o := -I $(src)/../include/asm/trace obj-$(CONFIG_X86_32) += pgtable_32.o iomap_32.o obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o -obj-$(CONFIG_PTDUMP_CORE) += dump_pagetables.o +obj-$(CONFIG_PTDUMP) += dump_pagetables.o obj-$(CONFIG_PTDUMP_DEBUGFS) += debug_pagetables.o obj-$(CONFIG_HIGHMEM) += highmem_32.o diff --git a/mm/Kconfig.debug b/mm/Kconfig.debug index a51a1149909a..32b65073d0cc 100644 --- a/mm/Kconfig.debug +++ b/mm/Kconfig.debug @@ -186,9 +186,9 @@ config ARCH_HAS_DEBUG_WX config DEBUG_WX bool "Warn on W+X mappings at boot" depends on ARCH_HAS_DEBUG_WX - depends on GENERIC_PTDUMP + depends on ARCH_HAS_PTDUMP depends on MMU - select PTDUMP_CORE + select PTDUMP help Generate a warning if any W+X mappings are found at boot. @@ -213,18 +213,18 @@ config DEBUG_WX If in doubt, say "Y". -config GENERIC_PTDUMP +config ARCH_HAS_PTDUMP bool -config PTDUMP_CORE +config PTDUMP bool config PTDUMP_DEBUGFS bool "Export kernel pagetable layout to userspace via debugfs" depends on DEBUG_KERNEL depends on DEBUG_FS - depends on GENERIC_PTDUMP - select PTDUMP_CORE + depends on ARCH_HAS_PTDUMP + select PTDUMP help Say Y here if you want to show the kernel pagetable layout in a debugfs file. This information is only useful for kernel developers diff --git a/mm/Makefile b/mm/Makefile index 850386a67b3e..26dfecd4d396 100644 --- a/mm/Makefile +++ b/mm/Makefile @@ -138,7 +138,7 @@ obj-$(CONFIG_ZONE_DEVICE) += memremap.o obj-$(CONFIG_HMM_MIRROR) += hmm.o obj-$(CONFIG_MEMFD_CREATE) += memfd.o obj-$(CONFIG_MAPPING_DIRTY_HELPERS) += mapping_dirty_helpers.o -obj-$(CONFIG_PTDUMP_CORE) += ptdump.o +obj-$(CONFIG_PTDUMP) += ptdump.o obj-$(CONFIG_PAGE_REPORTING) += page_reporting.o obj-$(CONFIG_IO_MAPPING) += io-mapping.o obj-$(CONFIG_HAVE_BOOTMEM_INFO_NODE) += bootmem_info.o -- 2.25.1 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH V3 5/5] mm: Rename GENERIC_PTDUMP and PTDUMP_CORE 2025-02-26 12:24 ` [PATCH V3 5/5] mm: Rename GENERIC_PTDUMP and PTDUMP_CORE Anshuman Khandual @ 2025-02-26 12:33 ` Christophe Leroy 2025-02-26 19:53 ` Catalin Marinas 1 sibling, 0 replies; 12+ messages in thread From: Christophe Leroy @ 2025-02-26 12:33 UTC (permalink / raw) To: Anshuman Khandual, linux-mm Cc: Andrew Morton, Mark Rutland, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Catalin Marinas, Will Deacon, Jonathan Corbet, Marc Zyngier, Michael Ellerman, Nicholas Piggin, Paul Walmsley, Palmer Dabbelt, Heiko Carstens, Vasily Gorbik, Thomas Gleixner, Ingo Molnar Le 26/02/2025 à 13:24, Anshuman Khandual a écrit : > Platforms subscribe into generic ptdump implementation via GENERIC_PTDUMP. > But generic ptdump gets enabled via PTDUMP_CORE. These configs combination > is confusing as they sound very similar and does not differentiate between > platform's feature subscription and feature enablement for ptdump. Rename > the configs as ARCH_HAS_PTDUMP and PTDUMP making it more clear and improve > readability. > > Cc: Catalin Marinas <catalin.marinas@arm.com> > Cc: Will Deacon <will@kernel.org> > Cc: Jonathan Corbet <corbet@lwn.net> > Cc: Marc Zyngier <maz@kernel.org> > Cc: Michael Ellerman <mpe@ellerman.id.au> > Cc: Nicholas Piggin <npiggin@gmail.com> > Cc: Paul Walmsley <paul.walmsley@sifive.com> > Cc: Palmer Dabbelt <palmer@dabbelt.com> > Cc: Heiko Carstens <hca@linux.ibm.com> > Cc: Vasily Gorbik <gor@linux.ibm.com> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: Ingo Molnar <mingo@redhat.com> > Cc: Andrew Morton <akpm@linux-foundation.org> > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-doc@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > Cc: kvmarm@lists.linux.dev > Cc: linuxppc-dev@lists.ozlabs.org > Cc: linux-riscv@lists.infradead.org > Cc: linux-s390@vger.kernel.org > Cc: linux-mm@kvack.org > Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu> (powerpc) > --- > arch/arm64/Kconfig | 2 +- > arch/arm64/include/asm/ptdump.h | 4 ++-- > arch/arm64/kvm/Kconfig | 4 ++-- > arch/arm64/mm/Makefile | 2 +- > arch/powerpc/Kconfig | 2 +- > arch/powerpc/mm/Makefile | 2 +- > arch/riscv/Kconfig | 2 +- > arch/riscv/mm/Makefile | 2 +- > arch/s390/Kconfig | 2 +- > arch/s390/mm/Makefile | 2 +- > arch/x86/Kconfig | 2 +- > arch/x86/Kconfig.debug | 2 +- > arch/x86/mm/Makefile | 2 +- > mm/Kconfig.debug | 12 ++++++------ > mm/Makefile | 2 +- > 15 files changed, 22 insertions(+), 22 deletions(-) > > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig > index 940343beb3d4..5cf688ee01b7 100644 > --- a/arch/arm64/Kconfig > +++ b/arch/arm64/Kconfig > @@ -41,6 +41,7 @@ config ARM64 > select ARCH_HAS_NMI_SAFE_THIS_CPU_OPS > select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE > select ARCH_HAS_NONLEAF_PMD_YOUNG if ARM64_HAFT > + select ARCH_HAS_PTDUMP > select ARCH_HAS_PTE_DEVMAP > select ARCH_HAS_PTE_SPECIAL > select ARCH_HAS_HW_PTE_YOUNG > @@ -157,7 +158,6 @@ config ARM64 > select GENERIC_IRQ_SHOW_LEVEL > select GENERIC_LIB_DEVMEM_IS_ALLOWED > select GENERIC_PCI_IOMAP > - select GENERIC_PTDUMP > select GENERIC_SCHED_CLOCK > select GENERIC_SMP_IDLE_THREAD > select GENERIC_TIME_VSYSCALL > diff --git a/arch/arm64/include/asm/ptdump.h b/arch/arm64/include/asm/ptdump.h > index 6cf4aae05219..b2931d1ae0fb 100644 > --- a/arch/arm64/include/asm/ptdump.h > +++ b/arch/arm64/include/asm/ptdump.h > @@ -7,7 +7,7 @@ > > #include <linux/ptdump.h> > > -#ifdef CONFIG_PTDUMP_CORE > +#ifdef CONFIG_PTDUMP > > #include <linux/mm_types.h> > #include <linux/seq_file.h> > @@ -70,6 +70,6 @@ static inline void ptdump_debugfs_register(struct ptdump_info *info, > #else > static inline void note_page(struct ptdump_state *pt_st, unsigned long addr, > int level, u64 val) { } > -#endif /* CONFIG_PTDUMP_CORE */ > +#endif /* CONFIG_PTDUMP */ > > #endif /* __ASM_PTDUMP_H */ > diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig > index ead632ad01b4..096e45acadb2 100644 > --- a/arch/arm64/kvm/Kconfig > +++ b/arch/arm64/kvm/Kconfig > @@ -71,8 +71,8 @@ config PTDUMP_STAGE2_DEBUGFS > depends on KVM > depends on DEBUG_KERNEL > depends on DEBUG_FS > - depends on GENERIC_PTDUMP > - select PTDUMP_CORE > + depends on ARCH_HAS_PTDUMP > + select PTDUMP > default n > help > Say Y here if you want to show the stage-2 kernel pagetables > diff --git a/arch/arm64/mm/Makefile b/arch/arm64/mm/Makefile > index fc92170a8f37..c26489cf96cd 100644 > --- a/arch/arm64/mm/Makefile > +++ b/arch/arm64/mm/Makefile > @@ -5,7 +5,7 @@ obj-y := dma-mapping.o extable.o fault.o init.o \ > context.o proc.o pageattr.o fixmap.o > obj-$(CONFIG_ARM64_CONTPTE) += contpte.o > obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o > -obj-$(CONFIG_PTDUMP_CORE) += ptdump.o > +obj-$(CONFIG_PTDUMP) += ptdump.o > obj-$(CONFIG_PTDUMP_DEBUGFS) += ptdump_debugfs.o > obj-$(CONFIG_TRANS_TABLE) += trans_pgd.o > obj-$(CONFIG_TRANS_TABLE) += trans_pgd-asm.o > diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig > index 424f188e62d9..6f1ae41dcf85 100644 > --- a/arch/powerpc/Kconfig > +++ b/arch/powerpc/Kconfig > @@ -148,6 +148,7 @@ config PPC > select ARCH_HAS_PHYS_TO_DMA > select ARCH_HAS_PMEM_API > select ARCH_HAS_PREEMPT_LAZY > + select ARCH_HAS_PTDUMP > select ARCH_HAS_PTE_DEVMAP if PPC_BOOK3S_64 > select ARCH_HAS_PTE_SPECIAL > select ARCH_HAS_SCALED_CPUTIME if VIRT_CPU_ACCOUNTING_NATIVE && PPC_BOOK3S_64 > @@ -206,7 +207,6 @@ config PPC > select GENERIC_IRQ_SHOW > select GENERIC_IRQ_SHOW_LEVEL > select GENERIC_PCI_IOMAP if PCI > - select GENERIC_PTDUMP > select GENERIC_SMP_IDLE_THREAD > select GENERIC_TIME_VSYSCALL > select GENERIC_VDSO_TIME_NS > diff --git a/arch/powerpc/mm/Makefile b/arch/powerpc/mm/Makefile > index 0fe2f085c05a..8c1582b2987d 100644 > --- a/arch/powerpc/mm/Makefile > +++ b/arch/powerpc/mm/Makefile > @@ -15,5 +15,5 @@ obj-$(CONFIG_NUMA) += numa.o > obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o > obj-$(CONFIG_NOT_COHERENT_CACHE) += dma-noncoherent.o > obj-$(CONFIG_PPC_COPRO_BASE) += copro_fault.o > -obj-$(CONFIG_PTDUMP_CORE) += ptdump/ > +obj-$(CONFIG_PTDUMP) += ptdump/ > obj-$(CONFIG_KASAN) += kasan/ > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig > index 7612c52e9b1e..353cf41d01f4 100644 > --- a/arch/riscv/Kconfig > +++ b/arch/riscv/Kconfig > @@ -43,6 +43,7 @@ config RISCV > select ARCH_HAS_PMEM_API > select ARCH_HAS_PREEMPT_LAZY > select ARCH_HAS_PREPARE_SYNC_CORE_CMD > + select ARCH_HAS_PTDUMP if MMU > select ARCH_HAS_PTE_DEVMAP if 64BIT && MMU > select ARCH_HAS_PTE_SPECIAL > select ARCH_HAS_SET_DIRECT_MAP if MMU > @@ -112,7 +113,6 @@ config RISCV > select GENERIC_IRQ_SHOW_LEVEL > select GENERIC_LIB_DEVMEM_IS_ALLOWED > select GENERIC_PCI_IOMAP > - select GENERIC_PTDUMP if MMU > select GENERIC_SCHED_CLOCK > select GENERIC_SMP_IDLE_THREAD > select GENERIC_TIME_VSYSCALL if MMU && 64BIT > diff --git a/arch/riscv/mm/Makefile b/arch/riscv/mm/Makefile > index cbe4d775ef56..b916a68d324a 100644 > --- a/arch/riscv/mm/Makefile > +++ b/arch/riscv/mm/Makefile > @@ -19,7 +19,7 @@ obj-y += context.o > obj-y += pmem.o > > obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o > -obj-$(CONFIG_PTDUMP_CORE) += ptdump.o > +obj-$(CONFIG_PTDUMP) += ptdump.o > obj-$(CONFIG_KASAN) += kasan_init.o > > ifdef CONFIG_KASAN > diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig > index 9c9ec08d78c7..dd9dd2f8e673 100644 > --- a/arch/s390/Kconfig > +++ b/arch/s390/Kconfig > @@ -96,6 +96,7 @@ config S390 > select ARCH_HAS_MEM_ENCRYPT > select ARCH_HAS_NMI_SAFE_THIS_CPU_OPS > select ARCH_HAS_PREEMPT_LAZY > + select ARCH_HAS_PTDUMP > select ARCH_HAS_PTE_SPECIAL > select ARCH_HAS_SCALED_CPUTIME > select ARCH_HAS_SET_DIRECT_MAP > @@ -163,7 +164,6 @@ config S390 > select GENERIC_CPU_VULNERABILITIES > select GENERIC_ENTRY > select GENERIC_GETTIMEOFDAY > - select GENERIC_PTDUMP > select GENERIC_SMP_IDLE_THREAD > select GENERIC_TIME_VSYSCALL > select GENERIC_VDSO_TIME_NS > diff --git a/arch/s390/mm/Makefile b/arch/s390/mm/Makefile > index f6c2db7a8669..9726b91fe7e4 100644 > --- a/arch/s390/mm/Makefile > +++ b/arch/s390/mm/Makefile > @@ -9,6 +9,6 @@ obj-y += page-states.o pageattr.o pgtable.o pgalloc.o extable.o > obj-$(CONFIG_CMM) += cmm.o > obj-$(CONFIG_DEBUG_VIRTUAL) += physaddr.o > obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o > -obj-$(CONFIG_PTDUMP_CORE) += dump_pagetables.o > +obj-$(CONFIG_PTDUMP) += dump_pagetables.o > obj-$(CONFIG_PGSTE) += gmap.o > obj-$(CONFIG_PFAULT) += pfault.o > diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig > index be2c311f5118..39ecafffc7e3 100644 > --- a/arch/x86/Kconfig > +++ b/arch/x86/Kconfig > @@ -26,6 +26,7 @@ config X86_64 > depends on 64BIT > # Options that are inherently 64-bit kernel only: > select ARCH_HAS_GIGANTIC_PAGE > + select ARCH_HAS_PTDUMP > select ARCH_SUPPORTS_INT128 if CC_HAS_INT128 > select ARCH_SUPPORTS_PER_VMA_LOCK > select ARCH_SUPPORTS_HUGE_PFNMAP if TRANSPARENT_HUGEPAGE > @@ -174,7 +175,6 @@ config X86 > select GENERIC_IRQ_RESERVATION_MODE > select GENERIC_IRQ_SHOW > select GENERIC_PENDING_IRQ if SMP > - select GENERIC_PTDUMP > select GENERIC_SMP_IDLE_THREAD > select GENERIC_TIME_VSYSCALL > select GENERIC_GETTIMEOFDAY > diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug > index 1eb4d23cdaae..c95c3aaadf97 100644 > --- a/arch/x86/Kconfig.debug > +++ b/arch/x86/Kconfig.debug > @@ -59,7 +59,7 @@ config EARLY_PRINTK_USB_XDBC > config EFI_PGT_DUMP > bool "Dump the EFI pagetable" > depends on EFI > - select PTDUMP_CORE > + select PTDUMP > help > Enable this if you want to dump the EFI page table before > enabling virtual mode. This can be used to debug miscellaneous > diff --git a/arch/x86/mm/Makefile b/arch/x86/mm/Makefile > index 690fbf48e853..e0c99a8760ca 100644 > --- a/arch/x86/mm/Makefile > +++ b/arch/x86/mm/Makefile > @@ -39,7 +39,7 @@ CFLAGS_fault.o := -I $(src)/../include/asm/trace > obj-$(CONFIG_X86_32) += pgtable_32.o iomap_32.o > > obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o > -obj-$(CONFIG_PTDUMP_CORE) += dump_pagetables.o > +obj-$(CONFIG_PTDUMP) += dump_pagetables.o > obj-$(CONFIG_PTDUMP_DEBUGFS) += debug_pagetables.o > > obj-$(CONFIG_HIGHMEM) += highmem_32.o > diff --git a/mm/Kconfig.debug b/mm/Kconfig.debug > index a51a1149909a..32b65073d0cc 100644 > --- a/mm/Kconfig.debug > +++ b/mm/Kconfig.debug > @@ -186,9 +186,9 @@ config ARCH_HAS_DEBUG_WX > config DEBUG_WX > bool "Warn on W+X mappings at boot" > depends on ARCH_HAS_DEBUG_WX > - depends on GENERIC_PTDUMP > + depends on ARCH_HAS_PTDUMP > depends on MMU > - select PTDUMP_CORE > + select PTDUMP > help > Generate a warning if any W+X mappings are found at boot. > > @@ -213,18 +213,18 @@ config DEBUG_WX > > If in doubt, say "Y". > > -config GENERIC_PTDUMP > +config ARCH_HAS_PTDUMP > bool > > -config PTDUMP_CORE > +config PTDUMP > bool > > config PTDUMP_DEBUGFS > bool "Export kernel pagetable layout to userspace via debugfs" > depends on DEBUG_KERNEL > depends on DEBUG_FS > - depends on GENERIC_PTDUMP > - select PTDUMP_CORE > + depends on ARCH_HAS_PTDUMP > + select PTDUMP > help > Say Y here if you want to show the kernel pagetable layout in a > debugfs file. This information is only useful for kernel developers > diff --git a/mm/Makefile b/mm/Makefile > index 850386a67b3e..26dfecd4d396 100644 > --- a/mm/Makefile > +++ b/mm/Makefile > @@ -138,7 +138,7 @@ obj-$(CONFIG_ZONE_DEVICE) += memremap.o > obj-$(CONFIG_HMM_MIRROR) += hmm.o > obj-$(CONFIG_MEMFD_CREATE) += memfd.o > obj-$(CONFIG_MAPPING_DIRTY_HELPERS) += mapping_dirty_helpers.o > -obj-$(CONFIG_PTDUMP_CORE) += ptdump.o > +obj-$(CONFIG_PTDUMP) += ptdump.o > obj-$(CONFIG_PAGE_REPORTING) += page_reporting.o > obj-$(CONFIG_IO_MAPPING) += io-mapping.o > obj-$(CONFIG_HAVE_BOOTMEM_INFO_NODE) += bootmem_info.o ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH V3 5/5] mm: Rename GENERIC_PTDUMP and PTDUMP_CORE 2025-02-26 12:24 ` [PATCH V3 5/5] mm: Rename GENERIC_PTDUMP and PTDUMP_CORE Anshuman Khandual 2025-02-26 12:33 ` Christophe Leroy @ 2025-02-26 19:53 ` Catalin Marinas 2025-02-27 0:06 ` Anshuman Khandual 1 sibling, 1 reply; 12+ messages in thread From: Catalin Marinas @ 2025-02-26 19:53 UTC (permalink / raw) To: Anshuman Khandual Cc: linux-mm, Andrew Morton, Mark Rutland, Christophe Leroy, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Will Deacon, Jonathan Corbet, Marc Zyngier, Michael Ellerman, Nicholas Piggin, Paul Walmsley, Palmer Dabbelt, Heiko Carstens, Vasily Gorbik, Thomas Gleixner, Ingo Molnar On Wed, Feb 26, 2025 at 05:54:04PM +0530, Anshuman Khandual wrote: > diff --git a/arch/arm64/include/asm/ptdump.h b/arch/arm64/include/asm/ptdump.h > index 6cf4aae05219..b2931d1ae0fb 100644 > --- a/arch/arm64/include/asm/ptdump.h > +++ b/arch/arm64/include/asm/ptdump.h > @@ -7,7 +7,7 @@ > > #include <linux/ptdump.h> > > -#ifdef CONFIG_PTDUMP_CORE > +#ifdef CONFIG_PTDUMP Do we need this #ifdef at all? I haven't tried but usually, if the feature is not enabled, the header file on its own should be harmless. For arm64: Acked-by: Catalin Marinas <catalin.marinas@arm.com> ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH V3 5/5] mm: Rename GENERIC_PTDUMP and PTDUMP_CORE 2025-02-26 19:53 ` Catalin Marinas @ 2025-02-27 0:06 ` Anshuman Khandual 0 siblings, 0 replies; 12+ messages in thread From: Anshuman Khandual @ 2025-02-27 0:06 UTC (permalink / raw) To: Catalin Marinas Cc: linux-mm, Andrew Morton, Mark Rutland, Christophe Leroy, kvmarm, linux-arm-kernel, linux-doc, linux-kernel, linuxppc-dev, linux-riscv, linux-s390, Will Deacon, Jonathan Corbet, Marc Zyngier, Michael Ellerman, Nicholas Piggin, Paul Walmsley, Palmer Dabbelt, Heiko Carstens, Vasily Gorbik, Thomas Gleixner, Ingo Molnar On 2/27/25 01:23, Catalin Marinas wrote: > On Wed, Feb 26, 2025 at 05:54:04PM +0530, Anshuman Khandual wrote: >> diff --git a/arch/arm64/include/asm/ptdump.h b/arch/arm64/include/asm/ptdump.h >> index 6cf4aae05219..b2931d1ae0fb 100644 >> --- a/arch/arm64/include/asm/ptdump.h >> +++ b/arch/arm64/include/asm/ptdump.h >> @@ -7,7 +7,7 @@ >> >> #include <linux/ptdump.h> >> >> -#ifdef CONFIG_PTDUMP_CORE >> +#ifdef CONFIG_PTDUMP > > Do we need this #ifdef at all? I haven't tried but usually, if the > feature is not enabled, the header file on its own should be harmless. With or without the #ifdef CONFIG_PTDUMP in place here, this does not cause any build warnings even without CONFIG_PTDUMP enabled. But dropping #ifdef while renaming the config option itself, might have caused unrelated code churn. So probably if required we could drop this later on. > > For arm64: > > Acked-by: Catalin Marinas <catalin.marinas@arm.com> ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2025-02-27 0:06 UTC | newest] Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2025-02-26 12:23 [PATCH V3 0/5] mm: Rework generic PTDUMP configs Anshuman Khandual 2025-02-26 12:24 ` [PATCH V3 1/5] configs: Drop GENERIC_PTDUMP from debug.config Anshuman Khandual 2025-02-26 12:24 ` [PATCH V3 2/5] arch/powerpc: Drop GENERIC_PTDUMP from mpc885_ads_defconfig Anshuman Khandual 2025-02-26 12:31 ` Christophe Leroy 2025-02-26 12:24 ` [PATCH V3 3/5] docs: arm64: Drop PTDUMP config options from ptdump.rst Anshuman Khandual 2025-02-26 19:45 ` Catalin Marinas 2025-02-26 12:24 ` [PATCH V3 4/5] mm: Make DEBUG_WX depdendent on GENERIC_PTDUMP Anshuman Khandual 2025-02-26 12:31 ` Christophe Leroy 2025-02-26 12:24 ` [PATCH V3 5/5] mm: Rename GENERIC_PTDUMP and PTDUMP_CORE Anshuman Khandual 2025-02-26 12:33 ` Christophe Leroy 2025-02-26 19:53 ` Catalin Marinas 2025-02-27 0:06 ` Anshuman Khandual
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox