mirror of
https://github.com/torvalds/linux.git
synced 2024-11-24 05:02:12 +00:00
NFS: reduce the number of false cache invalidations.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
parent
c8d149f3db
commit
fb374d24f2
@ -1328,11 +1328,8 @@ static int nfs_check_inode_attributes(struct inode *inode, struct nfs_fattr *fat
|
|||||||
|
|
||||||
cur_size = i_size_read(inode);
|
cur_size = i_size_read(inode);
|
||||||
new_isize = nfs_size_to_loff_t(fattr->size);
|
new_isize = nfs_size_to_loff_t(fattr->size);
|
||||||
if (cur_size != new_isize) {
|
if (cur_size != new_isize && nfsi->npages == 0)
|
||||||
nfsi->cache_validity |= NFS_INO_INVALID_ATTR;
|
nfsi->cache_validity |= NFS_INO_INVALID_ATTR|NFS_INO_REVAL_PAGECACHE;
|
||||||
if (nfsi->npages == 0)
|
|
||||||
nfsi->cache_validity |= NFS_INO_REVAL_PAGECACHE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Have any file permissions changed? */
|
/* Have any file permissions changed? */
|
||||||
if ((inode->i_mode & S_IALLUGO) != (fattr->mode & S_IALLUGO)
|
if ((inode->i_mode & S_IALLUGO) != (fattr->mode & S_IALLUGO)
|
||||||
|
Loading…
Reference in New Issue
Block a user