Lines Matching refs:cache

69 	struct cachefiles_cache *cache = object->volume->cache;  in cachefiles_unmark_inode_in_use()  local
75 atomic_long_add(inode->i_blocks, &cache->b_released); in cachefiles_unmark_inode_in_use()
76 if (atomic_inc_return(&cache->f_released)) in cachefiles_unmark_inode_in_use()
77 cachefiles_state_changed(cache); in cachefiles_unmark_inode_in_use()
84 struct dentry *cachefiles_get_directory(struct cachefiles_cache *cache, in cachefiles_get_directory() argument
119 ret = cachefiles_has_space(cache, 1, 0, in cachefiles_get_directory()
126 path.mnt = cache->mnt; in cachefiles_get_directory()
228 static int cachefiles_unlink(struct cachefiles_cache *cache, in cachefiles_unlink() argument
234 .mnt = cache->mnt, in cachefiles_unlink()
242 cachefiles_io_error(cache, "Unlink security error"); in cachefiles_unlink()
250 cachefiles_io_error(cache, "Unlink failed"); in cachefiles_unlink()
264 int cachefiles_bury_object(struct cachefiles_cache *cache, in cachefiles_bury_object() argument
288 ret = cachefiles_unlink(cache, object, dir, rep, why); in cachefiles_bury_object()
304 (uint32_t) atomic_inc_return(&cache->gravecounter)); in cachefiles_bury_object()
307 trap = lock_rename(cache->graveyard, dir); in cachefiles_bury_object()
313 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
318 if (!d_can_lookup(cache->graveyard)) { in cachefiles_bury_object()
319 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
320 cachefiles_io_error(cache, "Graveyard no longer a directory"); in cachefiles_bury_object()
325 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
326 cachefiles_io_error(cache, "May not make directory loop"); in cachefiles_bury_object()
331 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
332 cachefiles_io_error(cache, "Mountpoint in cache"); in cachefiles_bury_object()
336 grave = lookup_one_len(nbuffer, cache->graveyard, strlen(nbuffer)); in cachefiles_bury_object()
338 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
339 trace_cachefiles_vfs_error(object, d_inode(cache->graveyard), in cachefiles_bury_object()
348 cachefiles_io_error(cache, "Lookup error %ld", PTR_ERR(grave)); in cachefiles_bury_object()
353 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
361 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
363 cachefiles_io_error(cache, "Mountpoint in graveyard"); in cachefiles_bury_object()
369 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
371 cachefiles_io_error(cache, "May not make directory loop"); in cachefiles_bury_object()
376 path.mnt = cache->mnt; in cachefiles_bury_object()
378 path_to_graveyard.mnt = cache->mnt; in cachefiles_bury_object()
379 path_to_graveyard.dentry = cache->graveyard; in cachefiles_bury_object()
382 cachefiles_io_error(cache, "Rename security error %d", ret); in cachefiles_bury_object()
389 .new_dir = d_inode(cache->graveyard), in cachefiles_bury_object()
400 cachefiles_io_error(cache, in cachefiles_bury_object()
405 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
428 ret = cachefiles_unlink(volume->cache, object, fan, dentry, why); in cachefiles_delete_object()
441 struct cachefiles_cache *cache = volume->cache; in cachefiles_create_tmpfile() local
445 const struct path parentpath = { .mnt = cache->mnt, .dentry = fan }; in cachefiles_create_tmpfile()
450 cachefiles_begin_secure(cache, &saved_cred); in cachefiles_create_tmpfile()
457 cache->cache_cred); in cachefiles_create_tmpfile()
503 cachefiles_end_secure(cache, saved_cred); in cachefiles_create_tmpfile()
522 ret = cachefiles_has_space(object->volume->cache, 1, 0, in cachefiles_create_file()
545 struct cachefiles_cache *cache = object->volume->cache; in cachefiles_open_file() local
562 path.mnt = cache->mnt; in cachefiles_open_file()
565 d_backing_inode(dentry), cache->cache_cred); in cachefiles_open_file()
648 ret = cachefiles_bury_object(volume->cache, object, fan, dentry, in cachefiles_look_up_object()
670 bool cachefiles_commit_tmpfile(struct cachefiles_cache *cache, in cachefiles_commit_tmpfile() argument
699 ret = cachefiles_unlink(volume->cache, object, fan, dentry, in cachefiles_commit_tmpfile()
747 static struct dentry *cachefiles_lookup_for_cull(struct cachefiles_cache *cache, in cachefiles_lookup_for_cull() argument
779 cachefiles_io_error(cache, "Lookup failed"); in cachefiles_lookup_for_cull()
792 int cachefiles_cull(struct cachefiles_cache *cache, struct dentry *dir, in cachefiles_cull() argument
801 victim = cachefiles_lookup_for_cull(cache, dir, filename); in cachefiles_cull()
819 ret = cachefiles_bury_object(cache, NULL, dir, victim, in cachefiles_cull()
850 int cachefiles_check_in_use(struct cachefiles_cache *cache, struct dentry *dir, in cachefiles_check_in_use() argument
856 victim = cachefiles_lookup_for_cull(cache, dir, filename); in cachefiles_check_in_use()