diff options
author | Trond Myklebust <trond.myklebust@primarydata.com> | 2015-02-26 17:36:09 -0500 |
---|---|---|
committer | Trond Myklebust <trond.myklebust@primarydata.com> | 2015-03-01 23:23:06 -0500 |
commit | a08a8cd375db9769588257e7782f6b6b68561b88 (patch) | |
tree | d8546485f16b6ffc2c1d15a2009d384fc3f488ef /fs/nfs/proc.c | |
parent | f5062003465c20cfe584d9129a463322ad5cf4ea (diff) | |
download | op-kernel-dev-a08a8cd375db9769588257e7782f6b6b68561b88.zip op-kernel-dev-a08a8cd375db9769588257e7782f6b6b68561b88.tar.gz |
NFS: Add attribute update barriers to NFS writebacks
Ensure that other operations that race with our write RPC calls
cannot revert the file size updates that were made on the server.
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Tested-by: Chuck Lever <chuck.lever@oracle.com>
Diffstat (limited to 'fs/nfs/proc.c')
-rw-r--r-- | fs/nfs/proc.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/nfs/proc.c b/fs/nfs/proc.c index 6202bc0..c63189a 100644 --- a/fs/nfs/proc.c +++ b/fs/nfs/proc.c @@ -609,10 +609,8 @@ static int nfs_proc_pgio_rpc_prepare(struct rpc_task *task, static int nfs_write_done(struct rpc_task *task, struct nfs_pgio_header *hdr) { - struct inode *inode = hdr->inode; - if (task->tk_status >= 0) - nfs_post_op_update_inode_force_wcc(inode, hdr->res.fattr); + nfs_writeback_update_inode(hdr); return 0; } |