aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfsd/nfs4proc.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/nfsd/nfs4proc.c')
-rw-r--r--fs/nfsd/nfs4proc.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
index 3c627128e205..29b7e63cb32c 100644
--- a/fs/nfsd/nfs4proc.c
+++ b/fs/nfsd/nfs4proc.c
@@ -100,7 +100,15 @@ do_open_lookup(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_o
100 status = nfsd_create_v3(rqstp, current_fh, open->op_fname.data, 100 status = nfsd_create_v3(rqstp, current_fh, open->op_fname.data,
101 open->op_fname.len, &open->op_iattr, 101 open->op_fname.len, &open->op_iattr,
102 &resfh, open->op_createmode, 102 &resfh, open->op_createmode,
103 (u32 *)open->op_verf.data, &open->op_truncate, &created); 103 (u32 *)open->op_verf.data,
104 &open->op_truncate, &created);
105
106 /* If we ever decide to use different attrs to store the
107 * verifier in nfsd_create_v3, then we'll need to change this
108 */
109 if (open->op_createmode == NFS4_CREATE_EXCLUSIVE && status == 0)
110 open->op_bmval[1] |= (FATTR4_WORD1_TIME_ACCESS |
111 FATTR4_WORD1_TIME_MODIFY);
104 } else { 112 } else {
105 status = nfsd_lookup(rqstp, current_fh, 113 status = nfsd_lookup(rqstp, current_fh,
106 open->op_fname.data, open->op_fname.len, &resfh); 114 open->op_fname.data, open->op_fname.len, &resfh);