summaryrefslogtreecommitdiff
path: root/include/linux/nfs_fs.h
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2007-09-27 14:07:31 (GMT)
committerTrond Myklebust <Trond.Myklebust@netapp.com>2007-10-09 21:18:55 (GMT)
commit17cadc95372e28024be0874e67329c1862912c5d (patch)
tree0785ba140643d87c23e7bca67d1f2522214a0d12 /include/linux/nfs_fs.h
parente323ea46d95d7f8c789effd1194dfc120284dbbd (diff)
downloadlinux-fsl-qoriq-17cadc95372e28024be0874e67329c1862912c5d.tar.xz
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/nfs_fs.h')
-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 f451613..fd2c5c8 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)
spin_lock(&inode->i_lock);
nfsi->cache_validity |= NFS_INO_INVALID_ATTR|NFS_INO_INVALID_ACCESS;
- if (S_ISDIR(inode->i_mode))
+ if (S_ISDIR(inode->i_mode)) {
nfsi->cache_validity |= NFS_INO_REVAL_PAGECACHE|NFS_INO_INVALID_DATA;
+ nfsi->cache_change_attribute = jiffies;
+ }
spin_unlock(&inode->i_lock);
}