Lines Matching refs:cache
2091 struct nfs_access_entry *cache; in nfs_access_free_list() local
2094 cache = list_entry(head->next, struct nfs_access_entry, lru); in nfs_access_free_list()
2095 list_del(&cache->lru); in nfs_access_free_list()
2096 nfs_access_free_entry(cache); in nfs_access_free_list()
2105 struct nfs_access_entry *cache; in nfs_do_access_cache_scan() local
2118 cache = list_entry(nfsi->access_cache_entry_lru.next, in nfs_do_access_cache_scan()
2120 list_move(&cache->lru, &head); in nfs_do_access_cache_scan()
2121 rb_erase(&cache->rb_node, &nfsi->access_cache); in nfs_do_access_cache_scan()
2229 struct nfs_access_entry *cache; in nfs_access_get_cached() local
2235 cache = nfs_access_search_rbtree(inode, cred); in nfs_access_get_cached()
2236 if (cache == NULL) in nfs_access_get_cached()
2239 !time_in_range_open(jiffies, cache->jiffies, cache->jiffies + nfsi->attrtimeo)) in nfs_access_get_cached()
2241 res->jiffies = cache->jiffies; in nfs_access_get_cached()
2242 res->cred = cache->cred; in nfs_access_get_cached()
2243 res->mask = cache->mask; in nfs_access_get_cached()
2244 list_move_tail(&cache->lru, &nfsi->access_cache_entry_lru); in nfs_access_get_cached()
2250 rb_erase(&cache->rb_node, &nfsi->access_cache); in nfs_access_get_cached()
2251 list_del(&cache->lru); in nfs_access_get_cached()
2253 nfs_access_free_entry(cache); in nfs_access_get_cached()
2267 struct nfs_access_entry *cache; in nfs_access_get_cached_rcu() local
2275 cache = list_entry(lh, struct nfs_access_entry, lru); in nfs_access_get_cached_rcu()
2277 cred != cache->cred) in nfs_access_get_cached_rcu()
2278 cache = NULL; in nfs_access_get_cached_rcu()
2279 if (cache == NULL) in nfs_access_get_cached_rcu()
2282 !time_in_range_open(jiffies, cache->jiffies, cache->jiffies + nfsi->attrtimeo)) in nfs_access_get_cached_rcu()
2284 res->jiffies = cache->jiffies; in nfs_access_get_cached_rcu()
2285 res->cred = cache->cred; in nfs_access_get_cached_rcu()
2286 res->mask = cache->mask; in nfs_access_get_cached_rcu()
2328 struct nfs_access_entry *cache = kmalloc(sizeof(*cache), GFP_KERNEL); in nfs_access_add_cache() local
2329 if (cache == NULL) in nfs_access_add_cache()
2331 RB_CLEAR_NODE(&cache->rb_node); in nfs_access_add_cache()
2332 cache->jiffies = set->jiffies; in nfs_access_add_cache()
2333 cache->cred = get_rpccred(set->cred); in nfs_access_add_cache()
2334 cache->mask = set->mask; in nfs_access_add_cache()
2341 nfs_access_add_rbtree(inode, cache); in nfs_access_add_cache()
2375 struct nfs_access_entry cache; in nfs_do_access() local
2380 status = nfs_access_get_cached_rcu(inode, cred, &cache); in nfs_do_access()
2382 status = nfs_access_get_cached(inode, cred, &cache); in nfs_do_access()
2391 cache.mask = MAY_EXEC | MAY_WRITE | MAY_READ; in nfs_do_access()
2392 cache.cred = cred; in nfs_do_access()
2393 cache.jiffies = jiffies; in nfs_do_access()
2394 status = NFS_PROTO(inode)->access(inode, &cache); in nfs_do_access()
2403 nfs_access_add_cache(inode, &cache); in nfs_do_access()
2405 if ((mask & ~cache.mask & (MAY_READ | MAY_WRITE | MAY_EXEC)) != 0) in nfs_do_access()