NFS: Don't set NFS_INO_REVAL_PAGECACHE in the inode cache validity
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Fri, 26 Mar 2021 01:20:32 +0000 (21:20 -0400)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Tue, 13 Apr 2021 00:11:44 +0000 (20:11 -0400)
It is no longer necessary to preserve the NFS_INO_REVAL_PAGECACHE flag.

Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
fs/nfs/inode.c
fs/nfs/nfs4proc.c

index aec402d..3d18e66 100644 (file)
@@ -202,11 +202,12 @@ void nfs_set_cache_invalid(struct inode *inode, unsigned long flags)
                        flags &= ~NFS_INO_INVALID_OTHER;
                flags &= ~(NFS_INO_INVALID_CHANGE
                                | NFS_INO_INVALID_SIZE
-                               | NFS_INO_REVAL_PAGECACHE
                                | NFS_INO_INVALID_XATTR);
        } else if (flags & NFS_INO_REVAL_PAGECACHE)
                flags |= NFS_INO_INVALID_CHANGE | NFS_INO_INVALID_SIZE;
 
+       flags &= ~NFS_INO_REVAL_PAGECACHE;
+
        if (!nfs_has_xattr_cache(nfsi))
                flags &= ~NFS_INO_INVALID_XATTR;
        if (flags & NFS_INO_INVALID_DATA)
@@ -1917,7 +1918,6 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr)
        nfsi->cache_validity &= ~(NFS_INO_INVALID_ATTR
                        | NFS_INO_INVALID_ATIME
                        | NFS_INO_REVAL_FORCED
-                       | NFS_INO_REVAL_PAGECACHE
                        | NFS_INO_INVALID_BLOCKS);
 
        /* Do atomic weak cache consistency updates */
@@ -1956,7 +1956,6 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr)
        } else {
                nfsi->cache_validity |= save_cache_validity &
                                (NFS_INO_INVALID_CHANGE
-                               | NFS_INO_REVAL_PAGECACHE
                                | NFS_INO_REVAL_FORCED);
                cache_revalidated = false;
        }
@@ -2008,7 +2007,6 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr)
        } else {
                nfsi->cache_validity |= save_cache_validity &
                                (NFS_INO_INVALID_SIZE
-                               | NFS_INO_REVAL_PAGECACHE
                                | NFS_INO_REVAL_FORCED);
                cache_revalidated = false;
        }
index a213115..a490f13 100644 (file)
@@ -1191,7 +1191,6 @@ nfs4_update_changeattr_locked(struct inode *inode,
        cache_validity |= NFS_INO_INVALID_CTIME | NFS_INO_INVALID_MTIME;
 
        if (cinfo->atomic && cinfo->before == inode_peek_iversion_raw(inode)) {
-               nfsi->cache_validity &= ~NFS_INO_REVAL_PAGECACHE;
                nfsi->attrtimeo_timestamp = jiffies;
        } else {
                if (S_ISDIR(inode->i_mode)) {