Skip to content

Commit 33388b3

Browse files
committed
NFSD: Clean up nfsd_vfs_write()
The RWF_SYNC and !RWF_SYNC arms are now exactly alike except that the RWF_SYNC arm resets the boot verifier twice in a row. Fix that redundancy and de-duplicate the code. Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1 parent 555dbf1 commit 33388b3

1 file changed

Lines changed: 5 additions & 16 deletions

File tree

fs/nfsd/vfs.c

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -997,22 +997,11 @@ nfsd_vfs_write(struct svc_rqst *rqstp, struct svc_fh *fhp, struct nfsd_file *nf,
997997

998998
iov_iter_kvec(&iter, WRITE, vec, vlen, *cnt);
999999
since = READ_ONCE(file->f_wb_err);
1000-
if (flags & RWF_SYNC) {
1001-
if (verf)
1002-
nfsd_copy_boot_verifier(verf,
1003-
net_generic(SVC_NET(rqstp),
1004-
nfsd_net_id));
1005-
host_err = vfs_iter_write(file, &iter, &pos, flags);
1006-
if (host_err < 0)
1007-
nfsd_reset_boot_verifier(net_generic(SVC_NET(rqstp),
1008-
nfsd_net_id));
1009-
} else {
1010-
if (verf)
1011-
nfsd_copy_boot_verifier(verf,
1012-
net_generic(SVC_NET(rqstp),
1013-
nfsd_net_id));
1014-
host_err = vfs_iter_write(file, &iter, &pos, flags);
1015-
}
1000+
if (verf)
1001+
nfsd_copy_boot_verifier(verf,
1002+
net_generic(SVC_NET(rqstp),
1003+
nfsd_net_id));
1004+
host_err = vfs_iter_write(file, &iter, &pos, flags);
10161005
if (host_err < 0) {
10171006
nfsd_reset_boot_verifier(net_generic(SVC_NET(rqstp),
10181007
nfsd_net_id));

0 commit comments

Comments
 (0)