Lines Matching refs:inode

36 	struct inode		vfs_inode;
41 static struct inode *openprom_iget(struct super_block *sb, ino_t ino);
43 static inline struct op_inode_info *OP_I(struct inode *inode) in OP_I() argument
45 return container_of(inode, struct op_inode_info, vfs_inode); in OP_I()
143 static int property_open(struct inode *inode, struct file *file) in property_open() argument
145 struct op_inode_info *oi = OP_I(inode); in property_open()
173 static struct dentry *openpromfs_lookup(struct inode *, struct dentry *, unsigned int);
179 static struct dentry *openpromfs_lookup(struct inode *dir, struct dentry *dentry, unsigned int flag… in openpromfs_lookup()
187 struct inode *inode; in openpromfs_lookup() local
232 inode = openprom_iget(dir->i_sb, ino); in openpromfs_lookup()
234 if (IS_ERR(inode)) in openpromfs_lookup()
235 return ERR_CAST(inode); in openpromfs_lookup()
236 ent_oi = OP_I(inode); in openpromfs_lookup()
242 inode->i_mode = S_IFDIR | S_IRUGO | S_IXUGO; in openpromfs_lookup()
243 inode->i_op = &openprom_inode_operations; in openpromfs_lookup()
244 inode->i_fop = &openprom_operations; in openpromfs_lookup()
245 set_nlink(inode, 2); in openpromfs_lookup()
250 inode->i_mode = S_IFREG | S_IRUSR | S_IWUSR; in openpromfs_lookup()
252 inode->i_mode = S_IFREG | S_IRUGO; in openpromfs_lookup()
253 inode->i_fop = &openpromfs_prop_ops; in openpromfs_lookup()
254 set_nlink(inode, 1); in openpromfs_lookup()
255 inode->i_size = ent_oi->u.prop->length; in openpromfs_lookup()
259 d_add(dentry, inode); in openpromfs_lookup()
265 struct inode *inode = file_inode(file); in openpromfs_readdir() local
266 struct op_inode_info *oi = OP_I(inode); in openpromfs_readdir()
275 if (!dir_emit(ctx, ".", 1, inode->i_ino, DT_DIR)) in openpromfs_readdir()
328 static struct inode *openprom_alloc_inode(struct super_block *sb) in openprom_alloc_inode()
341 struct inode *inode = container_of(head, struct inode, i_rcu); in openprom_i_callback() local
342 kmem_cache_free(op_inode_cachep, OP_I(inode)); in openprom_i_callback()
345 static void openprom_destroy_inode(struct inode *inode) in openprom_destroy_inode() argument
347 call_rcu(&inode->i_rcu, openprom_i_callback); in openprom_destroy_inode()
350 static struct inode *openprom_iget(struct super_block *sb, ino_t ino) in openprom_iget()
352 struct inode *inode; in openprom_iget() local
354 inode = iget_locked(sb, ino); in openprom_iget()
355 if (!inode) in openprom_iget()
357 if (inode->i_state & I_NEW) { in openprom_iget()
358 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME; in openprom_iget()
359 if (inode->i_ino == OPENPROM_ROOT_INO) { in openprom_iget()
360 inode->i_op = &openprom_inode_operations; in openprom_iget()
361 inode->i_fop = &openprom_operations; in openprom_iget()
362 inode->i_mode = S_IFDIR | S_IRUGO | S_IXUGO; in openprom_iget()
364 unlock_new_inode(inode); in openprom_iget()
366 return inode; in openprom_iget()
385 struct inode *root_inode; in openprom_fill_super()