[PATCH] mm: memfd_luo: add CONFIG_SHMEM dependency

Arnd Bergmann posted 1 patch 2 weeks, 1 day ago
kernel/liveupdate/Kconfig | 1 +
1 file changed, 1 insertion(+)
[PATCH] mm: memfd_luo: add CONFIG_SHMEM dependency
Posted by Arnd Bergmann 2 weeks, 1 day ago
From: Arnd Bergmann <arnd@arndb.de>

The new memfd code fails to link without SHMEM:

aarch64-linux-ld: mm/memfd_luo.o: in function `memfd_luo_retrieve_folios':
memfd_luo.c:(.text.memfd_luo_retrieve_folios+0xdc): undefined reference to `shmem_add_to_page_cache'
memfd_luo.c:(.text.memfd_luo_retrieve_folios+0x11c): undefined reference to `shmem_inode_acct_blocks'
memfd_luo.c:(.text.memfd_luo_retrieve_folios+0x134): undefined reference to `shmem_recalc_inode'

Add a Kconfig dependency to disallow that configuration.

Fixes: b3749f174d68 ("mm: memfd_luo: allow preserving memfd")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 kernel/liveupdate/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/kernel/liveupdate/Kconfig b/kernel/liveupdate/Kconfig
index 86a58eaf433a..80b77db2b0e0 100644
--- a/kernel/liveupdate/Kconfig
+++ b/kernel/liveupdate/Kconfig
@@ -53,6 +53,7 @@ config KEXEC_HANDOVER_ENABLE_DEFAULT
 config LIVEUPDATE
 	bool "Live Update Orchestrator"
 	depends on KEXEC_HANDOVER
+	depends on SHMEM
 	help
 	  Enable the Live Update Orchestrator. Live Update is a mechanism,
 	  typically based on kexec, that allows the kernel to be updated
-- 
2.39.5
Re: [PATCH] mm: memfd_luo: add CONFIG_SHMEM dependency
Posted by Pasha Tatashin 2 weeks, 1 day ago
On Thu, Dec 4, 2025 at 5:02 AM Arnd Bergmann <arnd@kernel.org> wrote:
>
> From: Arnd Bergmann <arnd@arndb.de>
>
> The new memfd code fails to link without SHMEM:
>
> aarch64-linux-ld: mm/memfd_luo.o: in function `memfd_luo_retrieve_folios':
> memfd_luo.c:(.text.memfd_luo_retrieve_folios+0xdc): undefined reference to `shmem_add_to_page_cache'
> memfd_luo.c:(.text.memfd_luo_retrieve_folios+0x11c): undefined reference to `shmem_inode_acct_blocks'
> memfd_luo.c:(.text.memfd_luo_retrieve_folios+0x134): undefined reference to `shmem_recalc_inode'
>
> Add a Kconfig dependency to disallow that configuration.
>
> Fixes: b3749f174d68 ("mm: memfd_luo: allow preserving memfd")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Reviewed-by: Pasha Tatashin <pasha.tatashin@soleen.com>
Re: [PATCH] mm: memfd_luo: add CONFIG_SHMEM dependency
Posted by Mike Rapoport 2 weeks, 1 day ago
On Thu, Dec 04, 2025 at 11:01:58AM +0100, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> 
> The new memfd code fails to link without SHMEM:
> 
> aarch64-linux-ld: mm/memfd_luo.o: in function `memfd_luo_retrieve_folios':
> memfd_luo.c:(.text.memfd_luo_retrieve_folios+0xdc): undefined reference to `shmem_add_to_page_cache'
> memfd_luo.c:(.text.memfd_luo_retrieve_folios+0x11c): undefined reference to `shmem_inode_acct_blocks'
> memfd_luo.c:(.text.memfd_luo_retrieve_folios+0x134): undefined reference to `shmem_recalc_inode'
> 
> Add a Kconfig dependency to disallow that configuration.
> 
> Fixes: b3749f174d68 ("mm: memfd_luo: allow preserving memfd")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Acked-by: Mike Rapoport (Microsoft) <rppt@kernel.org>

-- 
Sincerely yours,
Mike.
Re: [PATCH] mm: memfd_luo: add CONFIG_SHMEM dependency
Posted by Pratyush Yadav 2 weeks, 1 day ago
On Thu, Dec 04 2025, Arnd Bergmann wrote:

> From: Arnd Bergmann <arnd@arndb.de>
>
> The new memfd code fails to link without SHMEM:
>
> aarch64-linux-ld: mm/memfd_luo.o: in function `memfd_luo_retrieve_folios':
> memfd_luo.c:(.text.memfd_luo_retrieve_folios+0xdc): undefined reference to `shmem_add_to_page_cache'
> memfd_luo.c:(.text.memfd_luo_retrieve_folios+0x11c): undefined reference to `shmem_inode_acct_blocks'
> memfd_luo.c:(.text.memfd_luo_retrieve_folios+0x134): undefined reference to `shmem_recalc_inode'
>
> Add a Kconfig dependency to disallow that configuration.
>
> Fixes: b3749f174d68 ("mm: memfd_luo: allow preserving memfd")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Thanks!

Reviewed-by: Pratyush Yadav <pratyush@kernel.org>

> ---
>  kernel/liveupdate/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/kernel/liveupdate/Kconfig b/kernel/liveupdate/Kconfig
> index 86a58eaf433a..80b77db2b0e0 100644
> --- a/kernel/liveupdate/Kconfig
> +++ b/kernel/liveupdate/Kconfig
> @@ -53,6 +53,7 @@ config KEXEC_HANDOVER_ENABLE_DEFAULT
>  config LIVEUPDATE
>  	bool "Live Update Orchestrator"
>  	depends on KEXEC_HANDOVER
> +	depends on SHMEM
>  	help
>  	  Enable the Live Update Orchestrator. Live Update is a mechanism,
>  	  typically based on kexec, that allows the kernel to be updated

-- 
Regards,
Pratyush Yadav