Lines Matching refs:dir

266 				  struct dentry *dir,  in cachefiles_bury_object()  argument
275 _enter(",'%pd','%pd'", dir, rep); in cachefiles_bury_object()
277 _debug("remove %p from %p", rep, dir); in cachefiles_bury_object()
284 path.dentry = dir; in cachefiles_bury_object()
289 ret = vfs_unlink(d_inode(dir), rep, NULL); in cachefiles_bury_object()
295 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_bury_object()
306 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_bury_object()
315 trap = lock_rename(cache->graveyard, dir); in cachefiles_bury_object()
318 if (rep->d_parent != dir) { in cachefiles_bury_object()
321 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
327 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
333 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
339 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
346 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
359 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
367 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
375 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
383 path.dentry = dir; in cachefiles_bury_object()
390 ret = vfs_rename(d_inode(dir), rep, in cachefiles_bury_object()
400 unlock_rename(cache->graveyard, dir); in cachefiles_bury_object()
412 struct dentry *dir; in cachefiles_delete_object() local
421 dir = dget_parent(object->dentry); in cachefiles_delete_object()
423 mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_PARENT); in cachefiles_delete_object()
429 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_delete_object()
434 if (dir == object->dentry->d_parent) { in cachefiles_delete_object()
435 ret = cachefiles_bury_object(cache, dir, in cachefiles_delete_object()
441 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_delete_object()
446 dput(dir); in cachefiles_delete_object()
461 struct dentry *dir, *next = NULL; in cachefiles_walk_to_object() local
484 dir = dget(parent->dentry); in cachefiles_walk_to_object()
500 mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_PARENT); in cachefiles_walk_to_object()
503 next = lookup_one_len(name, dir, nlen); in cachefiles_walk_to_object()
527 path.dentry = dir; in cachefiles_walk_to_object()
532 ret = vfs_mkdir(d_inode(dir), next, 0); in cachefiles_walk_to_object()
556 path.dentry = dir; in cachefiles_walk_to_object()
561 ret = vfs_create(d_inode(dir), next, S_IFREG, true); in cachefiles_walk_to_object()
584 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_walk_to_object()
585 dput(dir); in cachefiles_walk_to_object()
586 dir = next; in cachefiles_walk_to_object()
605 ret = cachefiles_bury_object(cache, dir, next, true); in cachefiles_walk_to_object()
620 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_walk_to_object()
621 dput(dir); in cachefiles_walk_to_object()
622 dir = NULL; in cachefiles_walk_to_object()
698 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_walk_to_object()
701 dput(dir); in cachefiles_walk_to_object()
711 struct dentry *dir, in cachefiles_get_directory() argument
722 mutex_lock(&d_inode(dir)->i_mutex); in cachefiles_get_directory()
725 subdir = lookup_one_len(dirname, dir, strlen(dirname)); in cachefiles_get_directory()
745 path.dentry = dir; in cachefiles_get_directory()
749 ret = vfs_mkdir(d_inode(dir), subdir, 0700); in cachefiles_get_directory()
761 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_get_directory()
793 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_get_directory()
799 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_get_directory()
805 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_get_directory()
817 struct dentry *dir, in cachefiles_check_active() argument
830 mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_PARENT); in cachefiles_check_active()
833 victim = lookup_one_len(filename, dir, strlen(filename)); in cachefiles_check_active()
845 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_check_active()
874 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_check_active()
880 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_check_active()
903 int cachefiles_cull(struct cachefiles_cache *cache, struct dentry *dir, in cachefiles_cull() argument
909 _enter(",%pd/,%s", dir, filename); in cachefiles_cull()
911 victim = cachefiles_check_active(cache, dir, filename); in cachefiles_cull()
930 ret = cachefiles_bury_object(cache, dir, victim, false); in cachefiles_cull()
939 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_cull()
962 int cachefiles_check_in_use(struct cachefiles_cache *cache, struct dentry *dir, in cachefiles_check_in_use() argument
970 victim = cachefiles_check_active(cache, dir, filename); in cachefiles_check_in_use()
974 mutex_unlock(&d_inode(dir)->i_mutex); in cachefiles_check_in_use()