2021-02-08 22:01:59

by Seth Forshee

[permalink] [raw]
Subject: [PATCH] tmpfs: disallow CONFIG_TMPFS_INODE64 on alpha

As with s390, alpha is a 64-bit architecture with a 32-bit ino_t.
With CONFIG_TMPFS_INODE64=y tmpfs mounts will get 64-bit inode
numbers and display "inode64" in the mount options, whereas
passing "inode64" in the mount options will fail. This leads to
erroneous behaviours such as this:

# mkdir mnt
# mount -t tmpfs nodev mnt
# mount -o remount,rw mnt
mount: /home/ubuntu/mnt: mount point not mounted or bad option.

Prevent CONFIG_TMPFS_INODE64 from being selected on alpha.

Fixes: ea3271f7196c ("tmpfs: support 64-bit inums per-sb")
Cc: [email protected] # v5.9+
Signed-off-by: Seth Forshee <[email protected]>
---
fs/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/Kconfig b/fs/Kconfig
index 3347ec7bd837..da524c4d7b7e 100644
--- a/fs/Kconfig
+++ b/fs/Kconfig
@@ -203,7 +203,7 @@ config TMPFS_XATTR

config TMPFS_INODE64
bool "Use 64-bit ino_t by default in tmpfs"
- depends on TMPFS && 64BIT && !S390
+ depends on TMPFS && 64BIT && !(S390 || ALPHA)
default n
help
tmpfs has historically used only inode numbers as wide as an unsigned
--
2.29.2


2021-02-09 03:08:35

by Hugh Dickins

[permalink] [raw]
Subject: Re: [PATCH] tmpfs: disallow CONFIG_TMPFS_INODE64 on alpha

On Mon, 8 Feb 2021, Seth Forshee wrote:

> As with s390, alpha is a 64-bit architecture with a 32-bit ino_t.
> With CONFIG_TMPFS_INODE64=y tmpfs mounts will get 64-bit inode
> numbers and display "inode64" in the mount options, whereas
> passing "inode64" in the mount options will fail. This leads to
> erroneous behaviours such as this:
>
> # mkdir mnt
> # mount -t tmpfs nodev mnt
> # mount -o remount,rw mnt
> mount: /home/ubuntu/mnt: mount point not mounted or bad option.
>
> Prevent CONFIG_TMPFS_INODE64 from being selected on alpha.
>
> Fixes: ea3271f7196c ("tmpfs: support 64-bit inums per-sb")
> Cc: [email protected] # v5.9+
> Signed-off-by: Seth Forshee <[email protected]>

Thanks,
Acked-by: Hugh Dickins <[email protected]>

> ---
> fs/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/Kconfig b/fs/Kconfig
> index 3347ec7bd837..da524c4d7b7e 100644
> --- a/fs/Kconfig
> +++ b/fs/Kconfig
> @@ -203,7 +203,7 @@ config TMPFS_XATTR
>
> config TMPFS_INODE64
> bool "Use 64-bit ino_t by default in tmpfs"
> - depends on TMPFS && 64BIT && !S390
> + depends on TMPFS && 64BIT && !(S390 || ALPHA)
> default n
> help
> tmpfs has historically used only inode numbers as wide as an unsigned
> --
> 2.29.2