diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2005-10-27 22:12:41 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2005-10-27 22:12:41 -0400 |
commit | 3338c143b4fde2d256016b63043ec8e2c93eba19 (patch) | |
tree | babfe2188e64ea0bb37c9838f5bcd3337c0c7504 /fs/nfs | |
parent | 56ae19f38f10aad4f27f7e12138a29b295dff07a (diff) |
NFS: Optimise attribute revalidation on close().
Only force a getattr in nfs_file_flush() if the attribute
cache is stale.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs')
-rw-r--r-- | fs/nfs/file.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/nfs/file.c b/fs/nfs/file.c index 572d8593486f..57d3e77d97ee 100644 --- a/fs/nfs/file.c +++ b/fs/nfs/file.c | |||
@@ -205,8 +205,8 @@ nfs_file_flush(struct file *file) | |||
205 | if (!status) { | 205 | if (!status) { |
206 | status = ctx->error; | 206 | status = ctx->error; |
207 | ctx->error = 0; | 207 | ctx->error = 0; |
208 | if (!status && !nfs_have_delegation(inode, FMODE_READ)) | 208 | if (!status) |
209 | __nfs_revalidate_inode(NFS_SERVER(inode), inode); | 209 | nfs_revalidate_inode(NFS_SERVER(inode), inode); |
210 | } | 210 | } |
211 | unlock_kernel(); | 211 | unlock_kernel(); |
212 | return status; | 212 | return status; |