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 | linux-stable-a08a8cd375db9769588257e7782f6b6b68561b88.tar.gz linux-stable-a08a8cd375db9769588257e7782f6b6b68561b88.tar.bz2 linux-stable-a08a8cd375db9769588257e7782f6b6b68561b88.zip |
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 6202bc0f11bb..c63189acd052 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; } |