NFSv4.2: alloc_file_pseudo() takes an open flag, not an f_mode
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Fri, 5 Nov 2021 18:32:28 +0000 (14:32 -0400)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Fri, 5 Nov 2021 18:54:30 +0000 (14:54 -0400)
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
fs/nfs/nfs4file.c

index f9f50fe1f3a4ce5545aca9348f160dcb433d9e45..92a1b992a141eee57635cd536f5195d9e0d588e3 100644 (file)
@@ -351,13 +351,12 @@ static struct file *__nfs42_ssc_open(struct vfsmount *ss_mnt,
                goto out_free_name;
        }
 
-       filep = alloc_file_pseudo(r_ino, ss_mnt, read_name, FMODE_READ,
+       filep = alloc_file_pseudo(r_ino, ss_mnt, read_name, O_RDONLY,
                                     r_ino->i_fop);
        if (IS_ERR(filep)) {
                res = ERR_CAST(filep);
                goto out_free_name;
        }
-       filep->f_mode |= FMODE_READ;
 
        ctx = alloc_nfs_open_context(filep->f_path.dentry, filep->f_mode,
                                        filep);