Commit d4919ef7 authored by Alexandre Marciano Gimenez's avatar Alexandre Marciano Gimenez Committed by Todd Kjos
Browse files

ANDROID: fs/fuse: Use extended init flags for FUSE_PASSTHROUGH



Starting with FUSE 7.36, all the fields for the 32-bit FUSE init flags
have been allocated, so commit 53db2893 ("fuse: extend init flags")
introduces the new 32-bit flags2 field in fuse_init_in and
fuse_init_out. That change also adds the FUSE_INIT_RESERVED flag that
doesn't have any specific purpose yet, is just reserved and should not
be used, and (un)fortunately collides with FUSE_PASSTHROUGH.

This change fixes the conflict by simply setting the FUSE_PASSTHROUGH
value to the next, latest unused fuse2 bit.
Although this is not the best design choice, userspace will know what
FUSE_PASSTHROUGH bit to choose based on the FUSE major and minor version
for FUSE version:
- < 7.36:    FUSE_PASSTHROUGH is the 31st bit of flags;
- otherwise: FUSE_PASSTHROUGH is the 31st bit of flags2.

Test: launch_cvd (both android-mainline and android13-5.10) \
  `logcat FuseDaemon:V \*:S` shows no FUSE passthrough errors
Bug: 215310351
Signed-off-by: default avatarAlexandre Marciano Gimenez <raging@google.com>
Change-Id: I85d7582008b8c093b3172b3f41c6cdf09863dd45
(cherry picked from commit cffa61e7)
parent 1a6f3feb
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment