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);
132 befs_get_block(struct inode *inode, sector_t block, in befs_get_block() argument
135 struct super_block *sb = inode->i_sb; in befs_get_block()
136 befs_data_stream *ds = &BEFS_I(inode)->i_data.ds; in befs_get_block()
142 (unsigned long)inode->i_ino, (long)block); in befs_get_block()
146 (unsigned long)inode->i_ino); in befs_get_block()
154 __func__, (unsigned long)inode->i_ino, in befs_get_block()
161 map_bh(bh_result, inode->i_sb, disk_off); in befs_get_block()
164 __func__, (unsigned long)inode->i_ino, (long)block, in befs_get_block()
171 befs_lookup(struct inode *dir, struct dentry *dentry, unsigned int flags) in befs_lookup()
173 struct inode *inode; in befs_lookup() local
202 inode = NULL; in befs_lookup()
205 inode = ERR_PTR(-ENODATA); in befs_lookup()
207 inode = befs_iget(dir->i_sb, (ino_t) offset); in befs_lookup()
211 return d_splice_alias(inode, dentry); in befs_lookup()
217 struct inode *inode = file_inode(file); in befs_readdir() local
218 struct super_block *sb = inode->i_sb; in befs_readdir()
219 const befs_data_stream *ds = &BEFS_I(inode)->i_data.ds; in befs_readdir()
226 __func__, file, inode->i_ino, ctx->pos); in befs_readdir()
235 file, inode->i_ino); in befs_readdir()
274 static struct inode *
285 static void befs_free_inode(struct inode *inode) in befs_free_inode() argument
287 kmem_cache_free(befs_inode_cachep, BEFS_I(inode)); in befs_free_inode()
297 static struct inode *befs_iget(struct super_block *sb, unsigned long ino) in befs_iget()
303 struct inode *inode; in befs_iget() local
307 inode = iget_locked(sb, ino); in befs_iget()
308 if (!inode) in befs_iget()
310 if (!(inode->i_state & I_NEW)) in befs_iget()
311 return inode; in befs_iget()
313 befs_ino = BEFS_I(inode); in befs_iget()
316 befs_ino->i_inode_num = blockno2iaddr(sb, inode->i_ino); in befs_iget()
322 bh = sb_bread(sb, inode->i_ino); in befs_iget()
325 "inode = %lu", inode->i_ino); in befs_iget()
333 if (befs_check_inode(sb, raw_inode, inode->i_ino) != BEFS_OK) { in befs_iget()
334 befs_error(sb, "Bad inode: %lu", inode->i_ino); in befs_iget()
338 inode->i_mode = (umode_t) fs32_to_cpu(sb, raw_inode->mode); in befs_iget()
345 inode->i_uid = befs_sb->mount_opts.use_uid ? in befs_iget()
348 inode->i_gid = befs_sb->mount_opts.use_gid ? in befs_iget()
352 set_nlink(inode, 1); in befs_iget()
363 inode->i_mtime.tv_sec = in befs_iget()
365 inode->i_mtime.tv_nsec = 0; /* lower 16 bits are not a time */ in befs_iget()
366 inode_set_ctime_to_ts(inode, inode->i_mtime); in befs_iget()
367 inode->i_atime = inode->i_mtime; in befs_iget()
374 if (S_ISLNK(inode->i_mode) && !(befs_ino->i_flags & BEFS_LONG_SYMLINK)){ in befs_iget()
375 inode->i_size = 0; in befs_iget()
376 inode->i_blocks = befs_sb->block_size / VFS_BLOCK_SIZE; in befs_iget()
386 inode->i_blocks = in befs_iget()
388 inode->i_size = befs_ino->i_data.ds.size; in befs_iget()
391 inode->i_mapping->a_ops = &befs_aops; in befs_iget()
393 if (S_ISREG(inode->i_mode)) { in befs_iget()
394 inode->i_fop = &generic_ro_fops; in befs_iget()
395 } else if (S_ISDIR(inode->i_mode)) { in befs_iget()
396 inode->i_op = &befs_dir_inode_operations; in befs_iget()
397 inode->i_fop = &befs_dir_operations; in befs_iget()
398 } else if (S_ISLNK(inode->i_mode)) { in befs_iget()
400 inode->i_op = &page_symlink_inode_operations; in befs_iget()
401 inode_nohighmem(inode); in befs_iget()
402 inode->i_mapping->a_ops = &befs_symlink_aops; in befs_iget()
404 inode->i_link = befs_ino->i_data.symlink; in befs_iget()
405 inode->i_op = &simple_symlink_inode_operations; in befs_iget()
410 "on disk special files", inode->i_ino); in befs_iget()
416 unlock_new_inode(inode); in befs_iget()
417 return inode; in befs_iget()
423 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()
639 static struct inode *befs_nfs_get_inode(struct super_block *sb, uint64_t ino, in befs_nfs_get_inode()
668 struct inode *parent; in befs_get_parent()
813 struct inode *root; in befs_fill_super()