Lines Matching refs:inode

34 struct inode *bfs_iget(struct super_block *sb, unsigned long ino)  in bfs_iget()
37 struct inode *inode; in bfs_iget() local
41 inode = iget_locked(sb, ino); in bfs_iget()
42 if (!inode) in bfs_iget()
44 if (!(inode->i_state & I_NEW)) in bfs_iget()
45 return inode; in bfs_iget()
47 if ((ino < BFS_ROOT_INO) || (ino > BFS_SB(inode->i_sb)->si_lasti)) { in bfs_iget()
48 printf("Bad inode number %s:%08lx\n", inode->i_sb->s_id, ino); in bfs_iget()
53 bh = sb_bread(inode->i_sb, block); in bfs_iget()
55 printf("Unable to read inode %s:%08lx\n", inode->i_sb->s_id, in bfs_iget()
63 inode->i_mode = 0x0000FFFF & le32_to_cpu(di->i_mode); in bfs_iget()
65 inode->i_mode |= S_IFDIR; in bfs_iget()
66 inode->i_op = &bfs_dir_inops; in bfs_iget()
67 inode->i_fop = &bfs_dir_operations; in bfs_iget()
69 inode->i_mode |= S_IFREG; in bfs_iget()
70 inode->i_op = &bfs_file_inops; in bfs_iget()
71 inode->i_fop = &bfs_file_operations; in bfs_iget()
72 inode->i_mapping->a_ops = &bfs_aops; in bfs_iget()
75 BFS_I(inode)->i_sblock = le32_to_cpu(di->i_sblock); in bfs_iget()
76 BFS_I(inode)->i_eblock = le32_to_cpu(di->i_eblock); in bfs_iget()
77 BFS_I(inode)->i_dsk_ino = le16_to_cpu(di->i_ino); in bfs_iget()
78 i_uid_write(inode, le32_to_cpu(di->i_uid)); in bfs_iget()
79 i_gid_write(inode, le32_to_cpu(di->i_gid)); in bfs_iget()
80 set_nlink(inode, le32_to_cpu(di->i_nlink)); in bfs_iget()
81 inode->i_size = BFS_FILESIZE(di); in bfs_iget()
82 inode->i_blocks = BFS_FILEBLOCKS(di); in bfs_iget()
83 inode->i_atime.tv_sec = le32_to_cpu(di->i_atime); in bfs_iget()
84 inode->i_mtime.tv_sec = le32_to_cpu(di->i_mtime); in bfs_iget()
85 inode_set_ctime(inode, le32_to_cpu(di->i_ctime), 0); in bfs_iget()
86 inode->i_atime.tv_nsec = 0; in bfs_iget()
87 inode->i_mtime.tv_nsec = 0; in bfs_iget()
90 unlock_new_inode(inode); in bfs_iget()
91 return inode; in bfs_iget()
94 iget_failed(inode); in bfs_iget()
116 static int bfs_write_inode(struct inode *inode, struct writeback_control *wbc) in bfs_write_inode() argument
118 struct bfs_sb_info *info = BFS_SB(inode->i_sb); in bfs_write_inode()
119 unsigned int ino = (u16)inode->i_ino; in bfs_write_inode()
127 di = find_inode(inode->i_sb, ino, &bh); in bfs_write_inode()
139 di->i_mode = cpu_to_le32(inode->i_mode); in bfs_write_inode()
140 di->i_uid = cpu_to_le32(i_uid_read(inode)); in bfs_write_inode()
141 di->i_gid = cpu_to_le32(i_gid_read(inode)); in bfs_write_inode()
142 di->i_nlink = cpu_to_le32(inode->i_nlink); in bfs_write_inode()
143 di->i_atime = cpu_to_le32(inode->i_atime.tv_sec); in bfs_write_inode()
144 di->i_mtime = cpu_to_le32(inode->i_mtime.tv_sec); in bfs_write_inode()
145 di->i_ctime = cpu_to_le32(inode_get_ctime(inode).tv_sec); in bfs_write_inode()
146 i_sblock = BFS_I(inode)->i_sblock; in bfs_write_inode()
148 di->i_eblock = cpu_to_le32(BFS_I(inode)->i_eblock); in bfs_write_inode()
149 di->i_eoffset = cpu_to_le32(i_sblock * BFS_BSIZE + inode->i_size - 1); in bfs_write_inode()
162 static void bfs_evict_inode(struct inode *inode) in bfs_evict_inode() argument
164 unsigned long ino = inode->i_ino; in bfs_evict_inode()
167 struct super_block *s = inode->i_sb; in bfs_evict_inode()
169 struct bfs_inode_info *bi = BFS_I(inode); in bfs_evict_inode()
173 truncate_inode_pages_final(&inode->i_data); in bfs_evict_inode()
174 invalidate_inode_buffers(inode); in bfs_evict_inode()
175 clear_inode(inode); in bfs_evict_inode()
177 if (inode->i_nlink) in bfs_evict_inode()
180 di = find_inode(s, inode->i_ino, &bh); in bfs_evict_inode()
238 static struct inode *bfs_alloc_inode(struct super_block *sb) in bfs_alloc_inode()
247 static void bfs_free_inode(struct inode *inode) in bfs_free_inode() argument
249 kmem_cache_free(bfs_inode_cachep, BFS_I(inode)); in bfs_free_inode()
314 struct inode *inode; in bfs_fill_super() local
361 inode = bfs_iget(s, BFS_ROOT_INO); in bfs_fill_super()
362 if (IS_ERR(inode)) { in bfs_fill_super()
363 ret = PTR_ERR(inode); in bfs_fill_super()
366 s->s_root = d_make_root(inode); in bfs_fill_super()