summaryrefslogtreecommitdiffstats
path: root/fs/nfs/direct.c
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@primarydata.com>2016-06-01 21:42:32 -0400
committerTrond Myklebust <trond.myklebust@primarydata.com>2016-07-05 19:11:02 -0400
commita5314a74928fa6dbc4503a8c64f43bb5c1c12ac1 (patch)
tree0aa0e3f0b6b5a33a74a144b5714683d0d7e9eb41 /fs/nfs/direct.c
parent8fc3c3862728373e0d0f5abccc6afc56c69e0c63 (diff)
downloadlinux-a5314a74928fa6dbc4503a8c64f43bb5c1c12ac1.tar.gz
linux-a5314a74928fa6dbc4503a8c64f43bb5c1c12ac1.tar.bz2
linux-a5314a74928fa6dbc4503a8c64f43bb5c1c12ac1.zip
NFS: Ensure we reset the write verifier 'committed' value on resend.
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'fs/nfs/direct.c')
-rw-r--r--fs/nfs/direct.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/nfs/direct.c b/fs/nfs/direct.c
index d6d43b5eafb3..fb659bb50678 100644
--- a/fs/nfs/direct.c
+++ b/fs/nfs/direct.c
@@ -661,6 +661,8 @@ static void nfs_direct_write_reschedule(struct nfs_direct_req *dreq)
nfs_direct_write_scan_commit_list(dreq->inode, &reqs, &cinfo);
dreq->count = 0;
+ dreq->verf.committed = NFS_INVALID_STABLE_HOW;
+ nfs_clear_pnfs_ds_commit_verifiers(&dreq->ds_cinfo);
for (i = 0; i < dreq->mirror_count; i++)
dreq->mirrors[i].count = 0;
get_dreq(dreq);