diff mbox series

xfs: add CONFIG_MMU dependency

Message ID 20240909111922.249159-1-arnd@kernel.org (mailing list archive)
State New
Headers show
Series xfs: add CONFIG_MMU dependency | expand

Commit Message

Arnd Bergmann Sept. 9, 2024, 11:19 a.m. UTC
From: Arnd Bergmann <arnd@arndb.de>

XFS no longer builds on kernels with MMU disabled:

arm-linux-gnueabi-ld: fs/xfs/xfs_file.o: in function `xfs_write_fault.constprop.0':
xfs_file.c:(.text.xfs_write_fault.constprop.0+0xc): undefined reference to `filemap_fsnotify_fault'

It's rather unlikely that anyone is using this combination,
so just add a Kconfig dependency.

Fixes: 436df5326f57 ("xfs: add pre-content fsnotify hook for write faults")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 fs/xfs/Kconfig    | 1 +
 lib/Kconfig.debug | 1 +
 2 files changed, 2 insertions(+)

Comments

Jan Kara Sept. 9, 2024, 1:42 p.m. UTC | #1
On Mon 09-09-24 11:19:00, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> 
> XFS no longer builds on kernels with MMU disabled:
> 
> arm-linux-gnueabi-ld: fs/xfs/xfs_file.o: in function `xfs_write_fault.constprop.0':
> xfs_file.c:(.text.xfs_write_fault.constprop.0+0xc): undefined reference to `filemap_fsnotify_fault'
> 
> It's rather unlikely that anyone is using this combination,
> so just add a Kconfig dependency.
> 
> Fixes: 436df5326f57 ("xfs: add pre-content fsnotify hook for write faults")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Thanks! I've noticed the error from 0-day over the weekend as well. At this
point I'd rather handle this in a similar way as e.g. filemap_fault() is
handled in NOMMU case. I agree users of XFS (or bcachefs for that matter)
with !CONFIG_MMU are unlikely but fsnotify_filemap_fault() can grow more
users over time and providing the stub is easy enough. I'll push out fixed
version of the patch.

								Honza

> ---
>  fs/xfs/Kconfig    | 1 +
>  lib/Kconfig.debug | 1 +
>  2 files changed, 2 insertions(+)
> 
> diff --git a/fs/xfs/Kconfig b/fs/xfs/Kconfig
> index fffd6fffdce0..1834932a512d 100644
> --- a/fs/xfs/Kconfig
> +++ b/fs/xfs/Kconfig
> @@ -2,6 +2,7 @@
>  config XFS_FS
>  	tristate "XFS filesystem support"
>  	depends on BLOCK
> +	depends on MMU
>  	select EXPORTFS
>  	select LIBCRC32C
>  	select FS_IOMAP
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index 7c0546480078..8906e2cd1ed5 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -2862,6 +2862,7 @@ config TEST_KMOD
>  	depends on NETDEVICES && NET_CORE && INET # for TUN
>  	depends on BLOCK
>  	depends on PAGE_SIZE_LESS_THAN_256KB # for BTRFS
> +	depends on MMU # for XFS_FS
>  	select TEST_LKM
>  	select XFS_FS
>  	select TUN
> -- 
> 2.39.2
>
Christoph Hellwig Sept. 10, 2024, 8:08 a.m. UTC | #2
On Mon, Sep 09, 2024 at 03:42:19PM +0200, Jan Kara wrote:
> Thanks! I've noticed the error from 0-day over the weekend as well. At this
> point I'd rather handle this in a similar way as e.g. filemap_fault() is
> handled in NOMMU case. I agree users of XFS (or bcachefs for that matter)
> with !CONFIG_MMU are unlikely but fsnotify_filemap_fault() can grow more
> users over time and providing the stub is easy enough. I'll push out fixed
> version of the patch.

Yes, the stub is the right fix for this.
diff mbox series

Patch

diff --git a/fs/xfs/Kconfig b/fs/xfs/Kconfig
index fffd6fffdce0..1834932a512d 100644
--- a/fs/xfs/Kconfig
+++ b/fs/xfs/Kconfig
@@ -2,6 +2,7 @@ 
 config XFS_FS
 	tristate "XFS filesystem support"
 	depends on BLOCK
+	depends on MMU
 	select EXPORTFS
 	select LIBCRC32C
 	select FS_IOMAP
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 7c0546480078..8906e2cd1ed5 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -2862,6 +2862,7 @@  config TEST_KMOD
 	depends on NETDEVICES && NET_CORE && INET # for TUN
 	depends on BLOCK
 	depends on PAGE_SIZE_LESS_THAN_256KB # for BTRFS
+	depends on MMU # for XFS_FS
 	select TEST_LKM
 	select XFS_FS
 	select TUN