aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/nfs4xdr.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2005-10-27 22:12:39 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2005-10-27 22:12:39 -0400
commit33801147a8fda6b04d7e9afe1d42f1c01d3d6837 (patch)
tree5311fb4714f0a24b7d7666b04250205025e18d15 /fs/nfs/nfs4xdr.c
parent913a70fc170530f7e1ff0693595155457cc6d0ca (diff)
NFS: Optimise inode attribute cache updates
Allow nfs_refresh_inode() also to update attributes on the inode if the RPC call was sent after the last call to nfs_update_inode(). Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4xdr.c')
-rw-r--r--fs/nfs/nfs4xdr.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/nfs/nfs4xdr.c b/fs/nfs/nfs4xdr.c
index cd762648fa9a..8b21de8a06fa 100644
--- a/fs/nfs/nfs4xdr.c
+++ b/fs/nfs/nfs4xdr.c
@@ -2799,10 +2799,8 @@ static int decode_getfattr(struct xdr_stream *xdr, struct nfs_fattr *fattr, cons
2799 goto xdr_error; 2799 goto xdr_error;
2800 if ((status = decode_attr_time_modify(xdr, bitmap, &fattr->mtime)) != 0) 2800 if ((status = decode_attr_time_modify(xdr, bitmap, &fattr->mtime)) != 0)
2801 goto xdr_error; 2801 goto xdr_error;
2802 if ((status = verify_attr_len(xdr, savep, attrlen)) == 0) { 2802 if ((status = verify_attr_len(xdr, savep, attrlen)) == 0)
2803 fattr->valid = NFS_ATTR_FATTR | NFS_ATTR_FATTR_V3 | NFS_ATTR_FATTR_V4; 2803 fattr->valid = NFS_ATTR_FATTR | NFS_ATTR_FATTR_V3 | NFS_ATTR_FATTR_V4;
2804 fattr->timestamp = jiffies;
2805 }
2806xdr_error: 2804xdr_error:
2807 if (status != 0) 2805 if (status != 0)
2808 printk(KERN_NOTICE "%s: xdr error %d!\n", __FUNCTION__, -status); 2806 printk(KERN_NOTICE "%s: xdr error %d!\n", __FUNCTION__, -status);