Lines Matching refs:inode

42 static int befs_get_block(struct inode *, sector_t, struct buffer_head *, int);
45 static struct dentry *befs_lookup(struct inode *, struct dentry *,
47 static struct inode *befs_iget(struct super_block *, unsigned long);
48 static struct inode *befs_alloc_inode(struct super_block *sb);
49 static void befs_free_inode(struct inode *inode);
133 befs_get_block(struct inode *inode, sector_t block, in befs_get_block() argument
136 struct super_block *sb = inode->i_sb; in befs_get_block()
137 befs_data_stream *ds = &BEFS_I(inode)->i_data.ds; in befs_get_block()
143 (unsigned long)inode->i_ino, (long)block); in befs_get_block()
147 (unsigned long)inode->i_ino); in befs_get_block()
155 __func__, (unsigned long)inode->i_ino, in befs_get_block()
162 map_bh(bh_result, inode->i_sb, disk_off); in befs_get_block()
165 __func__, (unsigned long)inode->i_ino, (long)block, in befs_get_block()
172 befs_lookup(struct inode *dir, struct dentry *dentry, unsigned int flags) in befs_lookup()
174 struct inode *inode; in befs_lookup() local
203 inode = NULL; in befs_lookup()
206 inode = ERR_PTR(-ENODATA); in befs_lookup()
208 inode = befs_iget(dir->i_sb, (ino_t) offset); in befs_lookup()
212 return d_splice_alias(inode, dentry); in befs_lookup()
218 struct inode *inode = file_inode(file); in befs_readdir() local
219 struct super_block *sb = inode->i_sb; in befs_readdir()
220 const befs_data_stream *ds = &BEFS_I(inode)->i_data.ds; in befs_readdir()
227 __func__, file, inode->i_ino, ctx->pos); in befs_readdir()
236 file, inode->i_ino); in befs_readdir()
275 static struct inode *
286 static void befs_free_inode(struct inode *inode) in befs_free_inode() argument
288 kmem_cache_free(befs_inode_cachep, BEFS_I(inode)); in befs_free_inode()
298 static struct inode *befs_iget(struct super_block *sb, unsigned long ino) in befs_iget()
304 struct inode *inode; in befs_iget() local
308 inode = iget_locked(sb, ino); in befs_iget()
309 if (!inode) in befs_iget()
311 if (!(inode->i_state & I_NEW)) in befs_iget()
312 return inode; in befs_iget()
314 befs_ino = BEFS_I(inode); in befs_iget()
317 befs_ino->i_inode_num = blockno2iaddr(sb, inode->i_ino); in befs_iget()
323 bh = sb_bread(sb, inode->i_ino); in befs_iget()
326 "inode = %lu", inode->i_ino); in befs_iget()
334 if (befs_check_inode(sb, raw_inode, inode->i_ino) != BEFS_OK) { in befs_iget()
335 befs_error(sb, "Bad inode: %lu", inode->i_ino); in befs_iget()
339 inode->i_mode = (umode_t) fs32_to_cpu(sb, raw_inode->mode); in befs_iget()
346 inode->i_uid = befs_sb->mount_opts.use_uid ? in befs_iget()
349 inode->i_gid = befs_sb->mount_opts.use_gid ? in befs_iget()
353 set_nlink(inode, 1); in befs_iget()
364 inode_set_mtime(inode, in befs_iget()
367 inode_set_ctime_to_ts(inode, inode_get_mtime(inode)); in befs_iget()
368 inode_set_atime_to_ts(inode, inode_get_mtime(inode)); in befs_iget()
375 if (S_ISLNK(inode->i_mode) && !(befs_ino->i_flags & BEFS_LONG_SYMLINK)){ in befs_iget()
376 inode->i_size = 0; in befs_iget()
377 inode->i_blocks = befs_sb->block_size / VFS_BLOCK_SIZE; in befs_iget()
387 inode->i_blocks = in befs_iget()
389 inode->i_size = befs_ino->i_data.ds.size; in befs_iget()
392 inode->i_mapping->a_ops = &befs_aops; in befs_iget()
394 if (S_ISREG(inode->i_mode)) { in befs_iget()
395 inode->i_fop = &generic_ro_fops; in befs_iget()
396 } else if (S_ISDIR(inode->i_mode)) { in befs_iget()
397 inode->i_op = &befs_dir_inode_operations; in befs_iget()
398 inode->i_fop = &befs_dir_operations; in befs_iget()
399 } else if (S_ISLNK(inode->i_mode)) { in befs_iget()
401 inode->i_op = &page_symlink_inode_operations; in befs_iget()
402 inode_nohighmem(inode); in befs_iget()
403 inode->i_mapping->a_ops = &befs_symlink_aops; in befs_iget()
405 inode->i_link = befs_ino->i_data.symlink; in befs_iget()
406 inode->i_op = &simple_symlink_inode_operations; in befs_iget()
411 "on disk special files", inode->i_ino); in befs_iget()
417 unlock_new_inode(inode); in befs_iget()
418 return inode; in befs_iget()
424 iget_failed(inode); in befs_iget()
472 struct inode *inode = folio->mapping->host; in befs_symlink_read_folio() local
473 struct super_block *sb = inode->i_sb; in befs_symlink_read_folio()
474 struct befs_inode_info *befs_ino = BEFS_I(inode); in befs_symlink_read_folio()
637 static struct inode *befs_nfs_get_inode(struct super_block *sb, uint64_t ino, in befs_nfs_get_inode()
666 struct inode *parent; in befs_get_parent()
808 struct inode *root; in befs_fill_super()