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/nfs4proc.c | |
parent | b64e8a5ef758888cb42b7c105dcfaaf51aab1baf (diff) |
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/nfs4proc.c')
-rw-r--r-- | fs/nfs/nfs4proc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index d311984d2c88..796bc8ea7194 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c | |||
@@ -2427,7 +2427,7 @@ static int nfs4_write_done(struct rpc_task *task, struct nfs_write_data *data) | |||
2427 | } | 2427 | } |
2428 | if (task->tk_status >= 0) { | 2428 | if (task->tk_status >= 0) { |
2429 | renew_lease(NFS_SERVER(inode), data->timestamp); | 2429 | renew_lease(NFS_SERVER(inode), data->timestamp); |
2430 | nfs_post_op_update_inode(inode, data->res.fattr); | 2430 | nfs_post_op_update_inode_force_wcc(inode, data->res.fattr); |
2431 | } | 2431 | } |
2432 | return 0; | 2432 | return 0; |
2433 | } | 2433 | } |