mirror of https://gitee.com/openkylin/linux.git
NFS: Fix a resolution problem with nfs_inode->cache_change_attribute
The cache_change_attribute is used to decide whether or not a directory has changed, in which case we may need to look it up again. Again, the use of 'jiffies' leads to an issue of resolution. Once again, the fix is to change nfs_inode->cache_change_attribute, and just make it a simple counter. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
parent
4704f0e274
commit
011935a0a7
|
@ -661,7 +661,7 @@ static int nfs_fsync_dir(struct file *filp, struct dentry *dentry, int datasync)
|
|||
*/
|
||||
void nfs_force_lookup_revalidate(struct inode *dir)
|
||||
{
|
||||
NFS_I(dir)->cache_change_attribute = jiffies;
|
||||
NFS_I(dir)->cache_change_attribute++;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
@ -306,7 +306,6 @@ nfs_fhget(struct super_block *sb, struct nfs_fh *fh, struct nfs_fattr *fattr)
|
|||
|
||||
nfsi->read_cache_jiffies = fattr->time_start;
|
||||
nfsi->attr_gencount = fattr->gencount;
|
||||
nfsi->cache_change_attribute = now;
|
||||
inode->i_atime = fattr->atime;
|
||||
inode->i_mtime = fattr->mtime;
|
||||
inode->i_ctime = fattr->ctime;
|
||||
|
|
Loading…
Reference in New Issue