diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-10-15 18:18:29 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2008-01-30 02:05:47 -0500 |
commit | bfc69a456642a51c89dfd8e5184468857cb44f32 (patch) | |
tree | 0853b31afcc2c8bd24a0e94e9280d1c1083501de /fs/nfs/dir.c | |
parent | 5cce428d953cc3843b100e078dbc3c01c6411b85 (diff) |
NFS: define a function to update nfsi->cache_change_attribute
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/dir.c')
-rw-r--r-- | fs/nfs/dir.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index 32c666c612a1..72d141a0dbd8 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c | |||
@@ -638,6 +638,21 @@ static int nfs_fsync_dir(struct file *filp, struct dentry *dentry, int datasync) | |||
638 | return 0; | 638 | return 0; |
639 | } | 639 | } |
640 | 640 | ||
641 | /** | ||
642 | * nfs_force_lookup_revalidate - Mark the directory as having changed | ||
643 | * @dir - pointer to directory inode | ||
644 | * | ||
645 | * This forces the revalidation code in nfs_lookup_revalidate() to do a | ||
646 | * full lookup on all child dentries of 'dir' whenever a change occurs | ||
647 | * on the server that might have invalidated our dcache. | ||
648 | * | ||
649 | * The caller should be holding dir->i_lock | ||
650 | */ | ||
651 | void nfs_force_lookup_revalidate(struct inode *dir) | ||
652 | { | ||
653 | NFS_I(dir)->cache_change_attribute = jiffies; | ||
654 | } | ||
655 | |||
641 | /* | 656 | /* |
642 | * A check for whether or not the parent directory has changed. | 657 | * A check for whether or not the parent directory has changed. |
643 | * In the case it has, we assume that the dentries are untrustworthy | 658 | * In the case it has, we assume that the dentries are untrustworthy |