Lines Matching refs:inode

40 static struct inode *tracefs_alloc_inode(struct super_block *sb)  in tracefs_alloc_inode()
64 static void tracefs_free_inode(struct inode *inode) in tracefs_free_inode() argument
66 struct tracefs_inode *ti = get_tracefs(inode); in tracefs_free_inode()
116 struct inode *inode, struct dentry *dentry, in tracefs_syscall_mkdir() argument
132 ti = get_tracefs(inode); in tracefs_syscall_mkdir()
134 ti->private = inode; in tracefs_syscall_mkdir()
141 inode_unlock(inode); in tracefs_syscall_mkdir()
143 inode_lock(inode); in tracefs_syscall_mkdir()
150 static int tracefs_syscall_rmdir(struct inode *inode, struct dentry *dentry) in tracefs_syscall_rmdir() argument
166 inode_unlock(inode); in tracefs_syscall_rmdir()
171 inode_lock_nested(inode, I_MUTEX_PARENT); in tracefs_syscall_rmdir()
179 static void set_tracefs_inode_owner(struct inode *inode) in set_tracefs_inode_owner() argument
181 struct tracefs_inode *ti = get_tracefs(inode); in set_tracefs_inode_owner()
182 struct inode *root_inode = ti->private; in set_tracefs_inode_owner()
212 inode->i_uid = uid; in set_tracefs_inode_owner()
215 inode->i_gid = gid; in set_tracefs_inode_owner()
219 struct inode *inode, int mask) in tracefs_permission() argument
221 set_tracefs_inode_owner(inode); in tracefs_permission()
222 return generic_permission(idmap, inode, mask); in tracefs_permission()
229 struct inode *inode = d_backing_inode(path->dentry); in tracefs_getattr() local
231 set_tracefs_inode_owner(inode); in tracefs_getattr()
232 generic_fillattr(idmap, request_mask, inode, stat); in tracefs_getattr()
240 struct inode *inode = d_inode(dentry); in tracefs_setattr() local
241 struct tracefs_inode *ti = get_tracefs(inode); in tracefs_setattr()
274 struct inode *tracefs_get_inode(struct super_block *sb) in tracefs_get_inode()
276 struct inode *inode = new_inode(sb); in tracefs_get_inode() local
277 if (inode) { in tracefs_get_inode()
278 inode->i_ino = get_next_ino(); in tracefs_get_inode()
279 inode->i_atime = inode->i_mtime = inode_set_ctime_current(inode); in tracefs_get_inode()
281 return inode; in tracefs_get_inode()
364 struct inode *inode = d_inode(sb->s_root); in tracefs_apply_options() local
376 tmp_mode = READ_ONCE(inode->i_mode) & ~S_IALLUGO; in tracefs_apply_options()
378 WRITE_ONCE(inode->i_mode, tmp_mode); in tracefs_apply_options()
382 inode->i_uid = opts->uid; in tracefs_apply_options()
385 inode->i_gid = opts->gid; in tracefs_apply_options()
442 static int tracefs_drop_inode(struct inode *inode) in tracefs_drop_inode() argument
444 struct tracefs_inode *ti = get_tracefs(inode); in tracefs_drop_inode()
595 static struct inode *instance_inode(struct dentry *parent, struct inode *inode) in instance_inode() argument
601 return d_inode(inode->i_sb->s_root); in instance_inode()
646 struct inode *inode; in tracefs_create_file() local
659 inode = tracefs_get_inode(dentry->d_sb); in tracefs_create_file()
660 if (unlikely(!inode)) in tracefs_create_file()
663 ti = get_tracefs(inode); in tracefs_create_file()
664 ti->private = instance_inode(parent, inode); in tracefs_create_file()
666 inode->i_mode = mode; in tracefs_create_file()
667 inode->i_op = &tracefs_file_inode_operations; in tracefs_create_file()
668 inode->i_fop = fops ? fops : &tracefs_file_operations; in tracefs_create_file()
669 inode->i_private = data; in tracefs_create_file()
670 inode->i_uid = d_inode(dentry->d_parent)->i_uid; in tracefs_create_file()
671 inode->i_gid = d_inode(dentry->d_parent)->i_gid; in tracefs_create_file()
672 d_instantiate(dentry, inode); in tracefs_create_file()
682 struct inode *inode; in __create_dir() local
687 inode = tracefs_get_inode(dentry->d_sb); in __create_dir()
688 if (unlikely(!inode)) in __create_dir()
692 inode->i_mode = S_IFDIR | S_IRWXU | S_IRUSR| S_IRGRP | S_IXUSR | S_IXGRP; in __create_dir()
693 inode->i_op = ops; in __create_dir()
694 inode->i_fop = &simple_dir_operations; in __create_dir()
695 inode->i_uid = d_inode(dentry->d_parent)->i_uid; in __create_dir()
696 inode->i_gid = d_inode(dentry->d_parent)->i_gid; in __create_dir()
698 ti = get_tracefs(inode); in __create_dir()
699 ti->private = instance_inode(parent, inode); in __create_dir()
702 inc_nlink(inode); in __create_dir()
703 d_instantiate(dentry, inode); in __create_dir()