Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7957c1418f4b6c66e28d4ac3c4d7a8c19d526c48
Commit:     7957c1418f4b6c66e28d4ac3c4d7a8c19d526c48
Parent:     68e8a70d3cae23716f6b2b3872eba10eccea148c
Author:     Trond Myklebust <[EMAIL PROTECTED]>
AuthorDate: Fri Sep 28 14:20:12 2007 -0400
Committer:  Trond Myklebust <[EMAIL PROTECTED]>
CommitDate: Tue Oct 9 17:18:46 2007 -0400

    NFS: fix nfs_verify_change_attribute
    
    We always want to check that the verifier and directory
    cache_change_attribute match. This also allows us to remove the 'wraparound
    hack' for the cache_change_attribute. If we're only checking for equality,
    then we don't care about wraparound issues.
    
    Signed-off-by: Trond Myklebust <[EMAIL PROTECTED]>
---
 fs/nfs/inode.c         |    4 ----
 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 0d98074..ed035a8 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)
        nfsi->read_cache_jiffies = fattr->time_start;
        nfsi->last_updated = now;
 
-       /* Fix a wraparound issue with nfsi->cache_change_attribute */
-       if (time_before(now, nfsi->cache_change_attribute))
-               nfsi->cache_change_attribute = now - 600*HZ;
-
        /* Are we racing with known updates of the metadata on the server? */
        data_stable = nfs_verify_change_attribute(inode, fattr->time_start);
        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 5b42fef..f451613 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)
 static inline int nfs_verify_change_attribute(struct inode *inode, unsigned 
long chattr)
 {
        return !nfs_caches_unstable(inode)
-               && time_after_eq(chattr, NFS_I(inode)->cache_change_attribute);
+               && chattr == NFS_I(inode)->cache_change_attribute;
 }
 
 /*
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to