ANDROID: fs/passthrough: Fix compatibility with R/O file system

Look at the passthrough file and check to see if its mount is read-only.

Bug: 297482438
Signed-off-by: Lyon Wang <lyon.wang@mediatek.com>
Change-Id: I0f483c6bcb1effe395eee07b6d721f343840d115
(cherry picked from commit dbeed231965e1a01bf0d70ea5439fbfacc7c4aae)
This commit is contained in:
Lyon Wang 2023-10-30 19:22:31 +08:00 committed by Todd Kjos
parent abcd4c51e7
commit 48c6c901fe

View File

@ -214,7 +214,8 @@ int fuse_passthrough_open(struct fuse_dev *fud, u32 lower_fd)
}
if (!passthrough_filp->f_op->read_iter ||
!passthrough_filp->f_op->write_iter) {
!((passthrough_filp->f_path.mnt->mnt_flags | MNT_READONLY) ||
passthrough_filp->f_op->write_iter)) {
pr_err("FUSE: passthrough file misses file operations.\n");
res = -EBADF;
goto err_free_file;