From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id F2FBFC02194 for ; Wed, 5 Feb 2025 10:01:14 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5A2DB280009; Wed, 5 Feb 2025 05:01:14 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 52B37280004; Wed, 5 Feb 2025 05:01:14 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3CBE2280009; Wed, 5 Feb 2025 05:01:14 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 161F2280004 for ; Wed, 5 Feb 2025 05:01:14 -0500 (EST) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 1C073140863 for ; Wed, 5 Feb 2025 10:01:12 +0000 (UTC) X-FDA: 83085447984.07.6449B36 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf07.hostedemail.com (Postfix) with ESMTP id E36104000E for ; Wed, 5 Feb 2025 10:01:09 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf07.hostedemail.com: domain of mark.rutland@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=mark.rutland@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738749670; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=rmZQTxMDm0TWEQC6Sb4VCa8/8KLqxODBUuE5383WBS4=; b=ptuN9RpcIBfhb94oLltkOeqUZwgDNfvGsTi4kk1lEONUkQfMTS6l4767RigmvPnrtxcL5u 5I1wUEjSZSutVQI3FlkWy6AecRrfE5LahLA6wXEdGMbSQhtPPtYPV8VZP2CyYGXrs/ooWy 0mT2wQTo9vRAtRKR7jXJNT2ay18qDrE= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738749670; a=rsa-sha256; cv=none; b=OhXsQckA4k0m9HX34d2Vq0xcabBmJdTHwq1RXrN5oRhNsNRJeVjyVtC7t3PM/+pkcy6aa2 B2suZb8Le+OwzURmEL0t3jxXcfXS6gNaHd7OOTylTLrFSTC8owwxE985WdYPbGa6rT6iWR dF4hHH5DfkpSTodUkXintbinmyzGI9I= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf07.hostedemail.com: domain of mark.rutland@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=mark.rutland@arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8085111FB; Wed, 5 Feb 2025 02:01:32 -0800 (PST) Received: from J2N7QTR9R3 (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 648383F5A1; Wed, 5 Feb 2025 02:01:04 -0800 (PST) Date: Wed, 5 Feb 2025 10:01:01 +0000 From: Mark Rutland To: Anshuman Khandual Cc: linux-mm@kvack.org, steven.price@arm.com, christophe.leroy@csgroup.eu, Catalin Marinas , Will Deacon , Jonathan Corbet , Marc Zyngier , Michael Ellerman , Nicholas Piggin , Paul Walmsley , Palmer Dabbelt , Heiko Carstens , Vasily Gorbik , Thomas Gleixner , Ingo Molnar , Andrew Morton , linux-arm-kernel@lists.infradead.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, kvmarm@lists.linux.dev, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org Subject: Re: [PATCH V2] mm/ptdump: Drop GENERIC_PTDUMP Message-ID: References: <20250205050039.1506377-1-anshuman.khandual@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250205050039.1506377-1-anshuman.khandual@arm.com> X-Stat-Signature: bs9ffwqdfzxdsabehq9qzhefs957deu7 X-Rspam-User: X-Rspamd-Queue-Id: E36104000E X-Rspamd-Server: rspam03 X-HE-Tag: 1738749669-449041 X-HE-Meta: U2FsdGVkX1+Z5ZeeOt0EG8FCVvL3NoUv+L+9AmDkFroWEx8c2f7e99UKYeLcJnkUMNSAeNvvQ2i1Uh1u7mISTDi4b804BFBBrKIwfEnE+HIIANjfnPIqYSjg8GXcZJCw7D3duITimBLMiLZT26a7iRhX8Wk7LQTXy7n+WgITv7YEJpLMHYXEA5YejUUpd0h93d18SgcEOUPAMDMFMAOQ+mBl4YCGJogsCW0XrsJTBY/VGTp0I3O/FrJIENtBlGiS3vUleUQCkSqV+KvExLtlg+MEPx0pgtsrt6VNjHFeFW9CSAymSmGQDjmqbJuU7uIitEmL3tv6f6fQlYzRl/w3d+XQTRtn7JSbC/zMAbKUw8SJcr0LEw+V7wSNZcoxh9Jsn5mP7w4SM4o8BeCTgIiPSMeNiGmJ6DvHx27hqN1uMfD72I52yN08qtEAo7orccdSQ2L/8IdkTVL7BNO5TaMe+LXkbttwjTTtxi+hUstvC0A/xbio64GAdJcRdukgKoKcEiTODRhflMg7S+MeomrjL/FPrrZQJOxurEauCdDYWXs/jRjAb0G0dATWaQuIAKfDEDfPD0f1eHbX/fU534gNzmAUl4klLBEl1rXQcUuc08bDKeHzKWz61hFkvLHLzi6ox6Pzvrme9znIFmWuIBTfmM1f8bXsBbk0iO2drhtS+W234BDH6ySqqW9Q3efXbtuUL1KBEet2MOaN0PoYU8z01c+cs6AyGjnPM8VEZvPJsx3q53R3JQTK2zHg6mNJoJ/qVc2eokgc+S2T2mjSxoTltGbYHgUoEpyBKXJkjNO2cDds3Af/qxjkaHjBqMN8AY6Kmf1hIxuYJ8jo+Z5wapdNggiSstenpRzGim8OsS3s9Nl3n5+d+/t2HrMp9LdlVnSOtA0Py4b7FauenFaXvxN5LeLXI5AnZ4N6V6fFK1DlllJPdBiZr4vAqTRLZM5B+5QYLwp0kANNTFi/A0dI6om mOGlPhhl xHIpOWSg5lqWdfHbt7IPVhj9IKy89nXuO0X5P1HNp+KzvkModQiBMSl9j0kAV7nR+ZpQOLd6PFdFxHYOoub1vxNys7lcS5lJhE0wzlcIWe1VcL/1g4MjgJsQ2sZ0IbKXXkip2d/GMt7WeZ47JVB9wBtzEZBbFoiA5RV61xD+LfEuLG/Rd5ahE4YvY+Og6GQ+YZBaQNVAmUXvuM10YxBYxh3SLGjw9KJGG3v3Pv+v4q5OnIMOKBlhJjrv9ZaDNYjLWSPIHFTq1uAFKICWHJT5q4NBgEMLvmVbGP9978B3zdf72yXoW/mH1SbRcCpY4BYFbnN7wOsh/+63ahjJ5ezHpfkONKvRGUALp2mS/yQyByUHUNjn3GrybsD1FPd0bkZFF7ohbJKc1xIRO9Z2CSDuqSewcJ9ub4sLgL9IAJbIB5zsAX0oTBV4O5TdmtqZKNhzcmB8b4Xzd7MwydhgSP51XewIC1LcpsPYKDWxu27Dp6sl6bUQFrqYyztNQZ1R3e77Jbjo+4dCZiMM0wA7AAC5aYWn4gYkQwIGd3Duw71+SgAfRs+X1WO6QjQBLVI2ov9aaVbRJykLfHWrzgTM8UJPvasa6yeLVXbC2BoiCYWydg9TLtbHuQA/IAVjPwzrMMtKagqbuCJcHaaO/klz0sk7f0u9mpUqBhwW06KAIMoGznLh5QQbFYtw22Yz8jZFNrv1drOmprdiGpyvIisKNzFzLLOqbIf4szGRbUyzRGc9hrzz60hBpkNWebuw84w== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Wed, Feb 05, 2025 at 10:30:39AM +0530, Anshuman Khandual wrote: > GENERIC_PTDUMP does not guard any code but instead just used for platform's > subscription into core ptdump defined under PTDUMP_CORE, which is selected. Selected by what? > Instead use PTDUMP_CORE for platform subscription and drop GENERIC_PTDUMP. > Cc: Catalin Marinas > Cc: Will Deacon > Cc: Jonathan Corbet > Cc: Marc Zyngier > Cc: Michael Ellerman > Cc: Nicholas Piggin > Cc: Paul Walmsley > Cc: Palmer Dabbelt > Cc: Heiko Carstens > Cc: Vasily Gorbik > Cc: Thomas Gleixner > Cc: Ingo Molnar > Cc: Andrew Morton > 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 > --- > This patch applies on v6.14-rc1 > > Changes in V2: > > - Keep arch/powerpc/Kconfig alphabetically sorted per Christophe > > Changes in V1: > > https://lore.kernel.org/all/20241217034807.2541349-1-anshuman.khandual@arm.com/ > > Documentation/arch/arm64/ptdump.rst | 1 - > arch/arm64/Kconfig | 2 +- > arch/arm64/kvm/Kconfig | 3 +-- > arch/powerpc/Kconfig | 2 +- > arch/powerpc/configs/mpc885_ads_defconfig | 1 - > arch/riscv/Kconfig | 2 +- > arch/s390/Kconfig | 2 +- > arch/x86/Kconfig | 2 +- > arch/x86/Kconfig.debug | 2 +- > kernel/configs/debug.config | 1 - > mm/Kconfig.debug | 8 ++------ > 11 files changed, 9 insertions(+), 17 deletions(-) > > diff --git a/Documentation/arch/arm64/ptdump.rst b/Documentation/arch/arm64/ptdump.rst > index 5dcfc5d7cddf..61ca040a885b 100644 > --- a/Documentation/arch/arm64/ptdump.rst > +++ b/Documentation/arch/arm64/ptdump.rst > @@ -22,7 +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 > > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig > index fcdd0ed3eca8..1f516bed81dd 100644 > --- a/arch/arm64/Kconfig > +++ b/arch/arm64/Kconfig > @@ -157,7 +157,7 @@ config ARM64 > select GENERIC_IRQ_SHOW_LEVEL > select GENERIC_LIB_DEVMEM_IS_ALLOWED > select GENERIC_PCI_IOMAP > - select GENERIC_PTDUMP > + select PTDUMP_CORE > select GENERIC_SCHED_CLOCK > select GENERIC_SMP_IDLE_THREAD > select GENERIC_TIME_VSYSCALL This change means that the ptdump core code will be built regardless of whether any users are selected: [mark@lakrids:~/src/linux]% git grep CONFIG_PTDUMP_CORE Documentation/arch/arm64/ptdump.rst: CONFIG_PTDUMP_CORE=y arch/arm64/include/asm/ptdump.h:#ifdef CONFIG_PTDUMP_CORE arch/arm64/include/asm/ptdump.h:#endif /* CONFIG_PTDUMP_CORE */ arch/arm64/mm/Makefile:obj-$(CONFIG_PTDUMP_CORE) += ptdump.o arch/powerpc/mm/Makefile:obj-$(CONFIG_PTDUMP_CORE) += ptdump/ arch/riscv/mm/Makefile:obj-$(CONFIG_PTDUMP_CORE) += ptdump.o arch/s390/mm/Makefile:obj-$(CONFIG_PTDUMP_CORE) += dump_pagetables.o arch/x86/mm/Makefile:obj-$(CONFIG_PTDUMP_CORE) += dump_pagetables.o mm/Makefile:obj-$(CONFIG_PTDUMP_CORE) += ptdump.o GENERIC_PTDUMP means "this architecture uses generic ptdump code for ptdump", i.e. the architecture implements all the necessary bits for that to work *IF* it is built. PTDUMP_CORE means "actually build the core ptdump code". If everyone uses the generic ptdump code now, maybe it's worth renaming GENERIC_PTDUMP to ARCH_HAS_PTDUMP or something like that, but I don't think this change makes sense as-is. [...] > 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 I think this is wrong today, and removing it is the right thing to do. Architectures with support will select this themselves, and on architectures without support this either does nothing or causes a build failure. Mark.