Lines Matching refs:inode

114 	struct inode *inode = d_inode(dentry);  in kernfs_iop_setattr()  local
122 error = inode_change_ok(inode, iattr); in kernfs_iop_setattr()
131 setattr_copy(inode, iattr); in kernfs_iop_setattr()
236 static inline void set_default_inode_attr(struct inode *inode, umode_t mode) in set_default_inode_attr() argument
238 inode->i_mode = mode; in set_default_inode_attr()
239 inode->i_atime = inode->i_mtime = inode->i_ctime = CURRENT_TIME; in set_default_inode_attr()
242 static inline void set_inode_attr(struct inode *inode, struct iattr *iattr) in set_inode_attr() argument
244 inode->i_uid = iattr->ia_uid; in set_inode_attr()
245 inode->i_gid = iattr->ia_gid; in set_inode_attr()
246 inode->i_atime = iattr->ia_atime; in set_inode_attr()
247 inode->i_mtime = iattr->ia_mtime; in set_inode_attr()
248 inode->i_ctime = iattr->ia_ctime; in set_inode_attr()
251 static void kernfs_refresh_inode(struct kernfs_node *kn, struct inode *inode) in kernfs_refresh_inode() argument
255 inode->i_mode = kn->mode; in kernfs_refresh_inode()
261 set_inode_attr(inode, &attrs->ia_iattr); in kernfs_refresh_inode()
262 security_inode_notifysecctx(inode, attrs->ia_secdata, in kernfs_refresh_inode()
267 set_nlink(inode, kn->dir.subdirs + 2); in kernfs_refresh_inode()
274 struct inode *inode = d_inode(dentry); in kernfs_iop_getattr() local
277 kernfs_refresh_inode(kn, inode); in kernfs_iop_getattr()
280 generic_fillattr(inode, stat); in kernfs_iop_getattr()
284 static void kernfs_init_inode(struct kernfs_node *kn, struct inode *inode) in kernfs_init_inode() argument
287 inode->i_private = kn; in kernfs_init_inode()
288 inode->i_mapping->a_ops = &kernfs_aops; in kernfs_init_inode()
289 inode->i_op = &kernfs_iops; in kernfs_init_inode()
291 set_default_inode_attr(inode, kn->mode); in kernfs_init_inode()
292 kernfs_refresh_inode(kn, inode); in kernfs_init_inode()
297 inode->i_op = &kernfs_dir_iops; in kernfs_init_inode()
298 inode->i_fop = &kernfs_dir_fops; in kernfs_init_inode()
300 make_empty_dir_inode(inode); in kernfs_init_inode()
303 inode->i_size = kn->attr.size; in kernfs_init_inode()
304 inode->i_fop = &kernfs_file_fops; in kernfs_init_inode()
307 inode->i_op = &kernfs_symlink_iops; in kernfs_init_inode()
313 unlock_new_inode(inode); in kernfs_init_inode()
331 struct inode *kernfs_get_inode(struct super_block *sb, struct kernfs_node *kn) in kernfs_get_inode()
333 struct inode *inode; in kernfs_get_inode() local
335 inode = iget_locked(sb, kn->ino); in kernfs_get_inode()
336 if (inode && (inode->i_state & I_NEW)) in kernfs_get_inode()
337 kernfs_init_inode(kn, inode); in kernfs_get_inode()
339 return inode; in kernfs_get_inode()
349 void kernfs_evict_inode(struct inode *inode) in kernfs_evict_inode() argument
351 struct kernfs_node *kn = inode->i_private; in kernfs_evict_inode()
353 truncate_inode_pages_final(&inode->i_data); in kernfs_evict_inode()
354 clear_inode(inode); in kernfs_evict_inode()
358 int kernfs_iop_permission(struct inode *inode, int mask) in kernfs_iop_permission() argument
365 kn = inode->i_private; in kernfs_iop_permission()
368 kernfs_refresh_inode(kn, inode); in kernfs_iop_permission()
371 return generic_permission(inode, mask); in kernfs_iop_permission()