[PATCH v2] Revert "fuse: Apply flags2 only when userspace set the FUSE_INIT_EXT"

From: André Draszik
Date: Wed Oct 18 2023 - 07:15:35 EST


From: André Draszik <andre.draszik@xxxxxxxxxx>

This reverts commit 3066ff93476c35679cb07a97cce37d9bb07632ff.

This patch breaks all existing userspace by requiring updates as
mentioned in the commit message, which is not allowed.

Revert to restore compatibility with existing userspace
implementations.

Cc: Bernd Schubert <bschubert@xxxxxxx>
Cc: Miklos Szeredi <mszeredi@xxxxxxxxxx>
Cc: <stable@xxxxxxxxxxxxxxx>
Signed-off-by: André Draszik <andre.draszik@xxxxxxxxxx>
Acked-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
v2: ping & add ack
v1: resend because of missing people in Cc
---
fs/fuse/inode.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c
index 2e4eb7cf26fb..b21ccc85c47b 100644
--- a/fs/fuse/inode.c
+++ b/fs/fuse/inode.c
@@ -1154,10 +1154,7 @@ static void process_init_reply(struct fuse_mount *fm, struct fuse_args *args,
process_init_limits(fc, arg);

if (arg->minor >= 6) {
- u64 flags = arg->flags;
-
- if (flags & FUSE_INIT_EXT)
- flags |= (u64) arg->flags2 << 32;
+ u64 flags = arg->flags | (u64) arg->flags2 << 32;

ra_pages = arg->max_readahead / PAGE_SIZE;
if (flags & FUSE_ASYNC_READ)
--
2.40.1