BACKPORT: fuse: extend init flags
FUSE_INIT flags are close to running out, so add another 32bits worth of space. Add FUSE_INIT_EXT flag to the old flags field in fuse_init_in. If this flag is set, then fuse_init_in is extended by 48bytes, in which a flags_hi field is allocated to contain the high 32bits of the flags. A flags_hi field is also added to fuse_init_out, allocated out of the remaining unused fields. Known userspace implementations of the fuse protocol have been checked to accept the extended FUSE_INIT request, but this might cause problems with other implementations. If that happens to be the case, the protocol negotiation will have to be extended with an extra initialization request roundtrip. Signed-off-by:Miklos Szeredi <mszeredi@redhat.com> Bug: 242358627 (cherry picked from commit 53db2893) [Yu-Li: Resolved conflict in fs/fuse/inode.c. Replaced FUSE_INIT_RESERVED with the existing FUSE_PASSTHROUGH which occupies the same value in include/uapi/linux/fuse.h. FUSE_PAASSTHROUGH was introuced in abbb00d5 as a FROMLIST patch] Signed-off-by:
Yu-Li <Lin<yulilin@google.com> Change-Id: I1243ceadcb6d9b6c963ccb812cd134ab0ca26bd9
Loading
Please sign in to comment