diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-09-30 15:21:24 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-10-09 17:19:15 -0400 |
commit | 70ca88521fc7bee8ef0fc22033a439d4b9a2c70d (patch) | |
tree | 8e3943bfac55b59dc127393f8da0ecfc4aba424b /fs/nfs/proc.c | |
parent | b64e8a5ef758888cb42b7c105dcfaaf51aab1baf (diff) | |
download | op-kernel-dev-70ca88521fc7bee8ef0fc22033a439d4b9a2c70d.zip op-kernel-dev-70ca88521fc7bee8ef0fc22033a439d4b9a2c70d.tar.gz |
NFS: Fake up 'wcc' attributes to prevent cache invalidation after write
NFSv2 and v4 don't offer weak cache consistency attributes on WRITE calls.
In NFSv3, returning wcc data is optional. In all cases, we want to prevent
the client from invalidating our cached data whenever ->write_done()
attempts to update the inode attributes.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/proc.c')
-rw-r--r-- | fs/nfs/proc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/proc.c b/fs/nfs/proc.c index ec3ede8..97669ed 100644 --- a/fs/nfs/proc.c +++ b/fs/nfs/proc.c @@ -579,7 +579,7 @@ static void nfs_proc_read_setup(struct nfs_read_data *data) static int nfs_write_done(struct rpc_task *task, struct nfs_write_data *data) { if (task->tk_status >= 0) - nfs_post_op_update_inode(data->inode, data->res.fattr); + nfs_post_op_update_inode_force_wcc(data->inode, data->res.fattr); return 0; } |