Lines Matching defs:cache

13  * Mark the backing file as being a cache file if it's not already in use.  The
69 struct cachefiles_cache *cache = object->volume->cache;
75 atomic_long_add(inode->i_blocks, &cache->b_released);
76 if (atomic_inc_return(&cache->f_released))
77 cachefiles_state_changed(cache);
84 struct dentry *cachefiles_get_directory(struct cachefiles_cache *cache,
119 ret = cachefiles_has_space(cache, 1, 0,
126 path.mnt = cache->mnt;
226 * Remove a regular file from the cache.
228 static int cachefiles_unlink(struct cachefiles_cache *cache,
234 .mnt = cache->mnt,
242 cachefiles_io_error(cache, "Unlink security error");
250 cachefiles_io_error(cache, "Unlink failed");
259 * Delete an object representation from the cache
264 int cachefiles_bury_object(struct cachefiles_cache *cache,
288 ret = cachefiles_unlink(cache, object, dir, rep, why);
304 (uint32_t) atomic_inc_return(&cache->gravecounter));
307 trap = lock_rename(cache->graveyard, dir);
313 unlock_rename(cache->graveyard, dir);
318 if (!d_can_lookup(cache->graveyard)) {
319 unlock_rename(cache->graveyard, dir);
320 cachefiles_io_error(cache, "Graveyard no longer a directory");
325 unlock_rename(cache->graveyard, dir);
326 cachefiles_io_error(cache, "May not make directory loop");
331 unlock_rename(cache->graveyard, dir);
332 cachefiles_io_error(cache, "Mountpoint in cache");
336 grave = lookup_one_len(nbuffer, cache->graveyard, strlen(nbuffer));
338 unlock_rename(cache->graveyard, dir);
339 trace_cachefiles_vfs_error(object, d_inode(cache->graveyard),
348 cachefiles_io_error(cache, "Lookup error %ld", PTR_ERR(grave));
353 unlock_rename(cache->graveyard, dir);
361 unlock_rename(cache->graveyard, dir);
363 cachefiles_io_error(cache, "Mountpoint in graveyard");
369 unlock_rename(cache->graveyard, dir);
371 cachefiles_io_error(cache, "May not make directory loop");
376 path.mnt = cache->mnt;
378 path_to_graveyard.mnt = cache->mnt;
379 path_to_graveyard.dentry = cache->graveyard;
382 cachefiles_io_error(cache, "Rename security error %d", ret);
389 .new_dir = d_inode(cache->graveyard),
400 cachefiles_io_error(cache,
405 unlock_rename(cache->graveyard, dir);
412 * Delete a cache file.
428 ret = cachefiles_unlink(volume->cache, object, fan, dentry, why);
441 struct cachefiles_cache *cache = volume->cache;
445 const struct path parentpath = { .mnt = cache->mnt, .dentry = fan };
450 cachefiles_begin_secure(cache, &saved_cred);
457 cache->cache_cred);
503 cachefiles_end_secure(cache, saved_cred);
522 ret = cachefiles_has_space(object->volume->cache, 1, 0,
545 struct cachefiles_cache *cache = object->volume->cache;
562 path.mnt = cache->mnt;
565 d_backing_inode(dentry), cache->cache_cred);
629 /* Look up path "cache/vol/fanout/file". */
648 ret = cachefiles_bury_object(volume->cache, object, fan, dentry,
668 * Attempt to link a temporary file into its rightful place in the cache.
670 bool cachefiles_commit_tmpfile(struct cachefiles_cache *cache,
699 ret = cachefiles_unlink(volume->cache, object, fan, dentry,
747 static struct dentry *cachefiles_lookup_for_cull(struct cachefiles_cache *cache,
779 cachefiles_io_error(cache, "Lookup failed");
790 * - called only by cache manager daemon
792 int cachefiles_cull(struct cachefiles_cache *cache, struct dentry *dir,
801 victim = cachefiles_lookup_for_cull(cache, dir, filename);
811 /* Stop the cache from picking it back up */
819 ret = cachefiles_bury_object(cache, NULL, dir, victim,
847 * - called only by cache manager daemon
850 int cachefiles_check_in_use(struct cachefiles_cache *cache, struct dentry *dir,
856 victim = cachefiles_lookup_for_cull(cache, dir, filename);