aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2007-09-27 10:07:31 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2007-10-09 17:18:55 -0400
commit17cadc95372e28024be0874e67329c1862912c5d (patch)
tree0785ba140643d87c23e7bca67d1f2522214a0d12 /include/linux
parente323ea46d95d7f8c789effd1194dfc120284dbbd (diff)
NFS: Don't force a dcache revalidation if nfs_wcc_update_inode succeeds
The reason is that if the weak cache consistency update was successful, then we know that our client must be the only one that changed the directory, and we've already updated the dcache to reflect the change. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/nfs_fs.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h
index f45161363be2..fd2c5c8158cf 100644
--- a/include/linux/nfs_fs.h
+++ b/include/linux/nfs_fs.h
@@ -235,8 +235,10 @@ static inline void nfs_mark_for_revalidate(struct inode *inode)
235 235
236 spin_lock(&inode->i_lock); 236 spin_lock(&inode->i_lock);
237 nfsi->cache_validity |= NFS_INO_INVALID_ATTR|NFS_INO_INVALID_ACCESS; 237 nfsi->cache_validity |= NFS_INO_INVALID_ATTR|NFS_INO_INVALID_ACCESS;
238 if (S_ISDIR(inode->i_mode)) 238 if (S_ISDIR(inode->i_mode)) {
239 nfsi->cache_validity |= NFS_INO_REVAL_PAGECACHE|NFS_INO_INVALID_DATA; 239 nfsi->cache_validity |= NFS_INO_REVAL_PAGECACHE|NFS_INO_INVALID_DATA;
240 nfsi->cache_change_attribute = jiffies;
241 }
240 spin_unlock(&inode->i_lock); 242 spin_unlock(&inode->i_lock);
241} 243}
242 244