diff options
-rw-r--r-- | fs/nfs/inode.c | 4 | ||||
-rw-r--r-- | include/linux/nfs_fs.h | 2 |
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) | |||
277 | static inline int nfs_verify_change_attribute(struct inode *inode, unsigned long chattr) | 277 | static 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 | /* |