aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/nfs/inode.c4
-rw-r--r--include/linux/nfs_fs.h2
2 files changed, 1 insertions, 5 deletions
diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c
index 0d98074d0766..ed035a81eea2 100644
--- a/fs/nfs/inode.c
+++ b/fs/nfs/inode.c
@@ -972,10 +972,6 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr)
972 nfsi->read_cache_jiffies = fattr->time_start; 972 nfsi->read_cache_jiffies = fattr->time_start;
973 nfsi->last_updated = now; 973 nfsi->last_updated = now;
974 974
975 /* Fix a wraparound issue with nfsi->cache_change_attribute */
976 if (time_before(now, nfsi->cache_change_attribute))
977 nfsi->cache_change_attribute = now - 600*HZ;
978
979 /* Are we racing with known updates of the metadata on the server? */ 975 /* Are we racing with known updates of the metadata on the server? */
980 data_stable = nfs_verify_change_attribute(inode, fattr->time_start); 976 data_stable = nfs_verify_change_attribute(inode, fattr->time_start);
981 nfsi->cache_validity &= ~(NFS_INO_INVALID_ATTR | NFS_INO_INVALID_ATIME 977 nfsi->cache_validity &= ~(NFS_INO_INVALID_ATTR | NFS_INO_INVALID_ATIME
diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h
index 5b42fef0baf0..f45161363be2 100644
--- a/include/linux/nfs_fs.h
+++ b/include/linux/nfs_fs.h
@@ -277,7 +277,7 @@ static inline long nfs_save_change_attribute(struct inode *inode)
277static inline int nfs_verify_change_attribute(struct inode *inode, unsigned long chattr) 277static inline int nfs_verify_change_attribute(struct inode *inode, unsigned long chattr)
278{ 278{
279 return !nfs_caches_unstable(inode) 279 return !nfs_caches_unstable(inode)
280 && time_after_eq(chattr, NFS_I(inode)->cache_change_attribute); 280 && chattr == NFS_I(inode)->cache_change_attribute;
281} 281}
282 282
283/* 283/*