[PATCH v2] fs: ntfs: Disable NTFS_RW for PPC

From: Guenter Roeck
Date: Mon Nov 22 2021 - 18:07:02 EST


NTFS_RW code allocates page size dependent arrays on the stack. This
results in build failures if the page size is 64k, which is now the
default for PPC.

fs/ntfs/aops.c: In function 'ntfs_write_mst_block':
fs/ntfs/aops.c:1311:1: error:
the frame size of 2240 bytes is larger than 2048 bytes

Increasing the maximum frame size for PPC just to silence this error does
not really help. It would have to be set to a really large value for 256k
pages. Such a large frame size could potentially result in stack overruns
in this code and elsewhere and is therefore not desirable. Disable NTFS_RW
for PPC instead.

Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
---
v2: Introduce new configuration flag DISABLE_NTFS_RW and use it to disable NTFS_RW
for PPC

fs/ntfs/Kconfig | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/fs/ntfs/Kconfig b/fs/ntfs/Kconfig
index 1667a7e590d8..324224febb6a 100644
--- a/fs/ntfs/Kconfig
+++ b/fs/ntfs/Kconfig
@@ -49,8 +49,13 @@ config NTFS_DEBUG
When reporting bugs, please try to have available a full dump of
debugging messages while the misbehaviour was occurring.

+config DISABLE_NTFS_RW
+ bool
+ default y if PPC
+
config NTFS_RW
bool "NTFS write support"
+ depends on !DISABLE_NTFS_RW
depends on NTFS_FS
help
This enables the partial, but safe, write support in the NTFS driver.
--
2.33.0