aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2008-12-23 15:21:55 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2008-12-23 15:21:55 -0500
commit7a50c60e461f6ff97428da9448c3dad5b7bef491 (patch)
tree311c584f990377c1cb16b178db4ad54ede3bea03
parent15860ab1d7700249ebe3b0b8ca86ce43dfd0d66f (diff)
NFS: Use delegations to optimise ACCESS calls
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
-rw-r--r--fs/nfs/dir.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
index ff167aa62434..ed7024c34885 100644
--- a/fs/nfs/dir.c
+++ b/fs/nfs/dir.c
@@ -1797,7 +1797,8 @@ static int nfs_access_get_cached(struct inode *inode, struct rpc_cred *cred, str
1797 cache = nfs_access_search_rbtree(inode, cred); 1797 cache = nfs_access_search_rbtree(inode, cred);
1798 if (cache == NULL) 1798 if (cache == NULL)
1799 goto out; 1799 goto out;
1800 if (!time_in_range(jiffies, cache->jiffies, cache->jiffies + nfsi->attrtimeo)) 1800 if (!nfs_have_delegation(inode, FMODE_READ) &&
1801 !time_in_range(jiffies, cache->jiffies, cache->jiffies + nfsi->attrtimeo))
1801 goto out_stale; 1802 goto out_stale;
1802 res->jiffies = cache->jiffies; 1803 res->jiffies = cache->jiffies;
1803 res->cred = cache->cred; 1804 res->cred = cache->cred;