diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-09-29 17:25:43 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-10-09 17:19:48 -0400 |
commit | a1643a92f6de92074116922a2d2906dd33499ff4 (patch) | |
tree | 9047e929e13d48b53a8d3512ce31ac9ab6b1832d /fs | |
parent | 3258b4fa552c4f994b5e6490a8ad88f5d7e0e648 (diff) |
NFS: NFS_CACHEINV() should not test for nfs_caches_unstable()
The fact that we're in the process of modifying the inode does not mean
that we should not invalidate the attribute and data caches. The defensive
thing is to always invalidate when we're confronted with inode
mtime/ctime or change_attribute updates that we do not immediately
recognise.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfs/dir.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index 35b447d79dbe..a03ed2f85047 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c | |||
@@ -788,7 +788,7 @@ static int nfs_lookup_revalidate(struct dentry * dentry, struct nameidata *nd) | |||
788 | out_zap_parent: | 788 | out_zap_parent: |
789 | nfs_zap_caches(dir); | 789 | nfs_zap_caches(dir); |
790 | out_bad: | 790 | out_bad: |
791 | NFS_CACHEINV(dir); | 791 | nfs_mark_for_revalidate(dir); |
792 | if (inode && S_ISDIR(inode->i_mode)) { | 792 | if (inode && S_ISDIR(inode->i_mode)) { |
793 | /* Purge readdir caches. */ | 793 | /* Purge readdir caches. */ |
794 | nfs_zap_caches(inode); | 794 | nfs_zap_caches(inode); |