From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F3B2E1BD9D3 for ; Wed, 28 May 2025 02:40:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748400054; cv=none; b=VFRU3MHRcz5CK8Z1eOD8rl7lKkOA17x3hs9DgLI9LURHEuPYvpUWBeEk/4Ful8Mh1b5Mpbn6/x1CraBzv+KRdQXOqryUwKAt//oeCk6/yP+Eo+Aaty/WFJsKS5njXy40IR6cXSDsDCIKCgoyYjkXuzamo9BG+rZKx5GkTfmstiI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748400054; c=relaxed/simple; bh=t1hp9wmvHRh/LsvDr9XIbArb6ZCwUfb9G7yYr2+O530=; h=Date:To:From:Subject:Message-Id; b=NFOB+NIq/+MYUiMPxJjeOv5oR1sUv+f+NaM2N3afKaKW86xNh84p4THGXqtrENhMb7tWdsNHMCpS8LJkTouXi9mp72SdCP8suFkT2NMe95dkzIswzMeLJ93CsiBhmqWvjJH3Rk0pWv2HgTnY5WqNSSAP1YT+MdBlnBnR9VVNp4Q= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux-foundation.org header.i=@linux-foundation.org header.b=CBdiOQM9; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux-foundation.org header.i=@linux-foundation.org header.b="CBdiOQM9" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 55B05C4CEE9; Wed, 28 May 2025 02:40:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1748400053; bh=t1hp9wmvHRh/LsvDr9XIbArb6ZCwUfb9G7yYr2+O530=; h=Date:To:From:Subject:From; b=CBdiOQM9sjnIsVq/bumR7Q0JAL3fas0Ht+wx937XqKt1syDwoZLCftqz4Anc6xwni MrGMA5I5Xx/qwDsPxapJLyoN6oaDsHItj+QOsfGskaDTPUW1OIgyGj1rW8sq6I1mX9 bhZYacSULtVKPd/bt5pDLlMBr3D3dji2/GU9fXvI= Date: Tue, 27 May 2025 19:40:52 -0700 To: mm-commits@vger.kernel.org,sagi@grimberg.me,leitao@debian.org,kch@nvidia.com,hch@lst.de,coxu@redhat.com,axboe@kernel.dk,a.hindborg@kernel.org,arnd@arndb.de,akpm@linux-foundation.org From: Andrew Morton Subject: [merged mm-nonmm-stable] crash_dump-nvme-select-configfs_fs-as-built-in.patch removed from -mm tree Message-Id: <20250528024053.55B05C4CEE9@smtp.kernel.org> Precedence: bulk X-Mailing-List: mm-commits@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: The quilt patch titled Subject: crash_dump, nvme: select CONFIGFS_FS as built-in has been removed from the -mm tree. Its filename was crash_dump-nvme-select-configfs_fs-as-built-in.patch This patch was dropped because it was merged into the mm-nonmm-stable branch of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm ------------------------------------------------------ From: Arnd Bergmann Subject: crash_dump, nvme: select CONFIGFS_FS as built-in Date: Wed, 21 May 2025 18:03:19 +0200 Configfs can be configured as a loadable module, which causes a link-time failure for dm-crypt crash dump support: crash_dump_dm_crypt.c:(.text+0x3a4): undefined reference to `config_item_init_type_name' aarch64-linux-ld: kernel/crash_dump_dm_crypt.o: in function `configfs_dmcrypt_keys_init': crash_dump_dm_crypt.c:(.init.text+0x90): undefined reference to `config_group_init' aarch64-linux-ld: crash_dump_dm_crypt.c:(.init.text+0xb4): undefined reference to `configfs_register_subsystem' aarch64-linux-ld: crash_dump_dm_crypt.c:(.init.text+0xd8): undefined reference to `configfs_unregister_subsystem' This could be avoided with a dependency on CONFIGFS_FS=y, but the dependency has an additional problem of causing Kconfig dependency loops since most other uses select the symbol. Using a simple 'select CONFIGFS_FS' here in turn fails with CONFIG_DM_CRYPT=m, because that still only causes configfs to be a loadable module. The only version I found that fixes this reliably uses an additional Kconfig symbol to ensure the 'select' actually turns on configfs as builtin, with two additional changes to avoid dependency loops with nvme and sysfs. There is no compile-time dependency between configfs and sysfs, so selecting configfs from a driver with sysfs disabled does not cause link failures, only the default /sys/kernel/config mount point will not be created. Link: https://lkml.kernel.org/r/20250521160359.2132363-1-arnd@kernel.org Fixes: 6b23858fd63b ("crash_dump: make dm crypt keys persist for the kdump kernel") Fixes: 1fb470408497 ("nvme-loop: add configfs dependency") Signed-off-by: Arnd Bergmann Cc: Andreas Hindborg Cc: Breno Leitao Cc: Chaitanya Kulkarni Cc: Christoph Hellwig Cc: Coiby Xu Cc: Jens Axboe Cc: Sagi Grimberg Signed-off-by: Andrew Morton --- drivers/nvme/target/Kconfig | 2 +- fs/configfs/Kconfig | 1 - kernel/Kconfig.kexec | 8 +++++++- 3 files changed, 8 insertions(+), 3 deletions(-) --- a/drivers/nvme/target/Kconfig~crash_dump-nvme-select-configfs_fs-as-built-in +++ a/drivers/nvme/target/Kconfig @@ -3,7 +3,7 @@ config NVME_TARGET tristate "NVMe Target support" depends on BLOCK - depends on CONFIGFS_FS + select CONFIGFS_FS select NVME_KEYRING if NVME_TARGET_TCP_TLS select KEYS if NVME_TARGET_TCP_TLS select SGL_ALLOC --- a/fs/configfs/Kconfig~crash_dump-nvme-select-configfs_fs-as-built-in +++ a/fs/configfs/Kconfig @@ -1,7 +1,6 @@ # SPDX-License-Identifier: GPL-2.0-only config CONFIGFS_FS tristate "Userspace-driven configuration filesystem" - select SYSFS help configfs is a RAM-based filesystem that provides the converse of sysfs's functionality. Where sysfs is a filesystem-based --- a/kernel/Kconfig.kexec~crash_dump-nvme-select-configfs_fs-as-built-in +++ a/kernel/Kconfig.kexec @@ -120,12 +120,18 @@ config CRASH_DM_CRYPT depends on KEXEC_FILE depends on CRASH_DUMP depends on DM_CRYPT - depends on CONFIGFS_FS help With this option enabled, user space can intereact with /sys/kernel/config/crash_dm_crypt_keys to make the dm crypt keys persistent for the dump-capture kernel. +config CRASH_DM_CRYPT_CONFIGS + def_tristate CRASH_DM_CRYPT + select CONFIGFS_FS + help + CRASH_DM_CRYPT cannot directly select CONFIGFS_FS, because that + is required to be built-in. + config CRASH_HOTPLUG bool "Update the crash elfcorehdr on system configuration changes" default y _ Patches currently in -mm which might be from arnd@arndb.de are