Lines Matching refs:inode
31 struct inode *omfs_new_inode(struct inode *dir, umode_t mode) in omfs_new_inode()
33 struct inode *inode; in omfs_new_inode() local
39 inode = new_inode(dir->i_sb); in omfs_new_inode()
40 if (!inode) in omfs_new_inode()
48 inode->i_ino = new_block; in omfs_new_inode()
49 inode_init_owner(inode, NULL, mode); in omfs_new_inode()
50 inode->i_mapping->a_ops = &omfs_aops; in omfs_new_inode()
52 inode->i_atime = inode->i_mtime = inode->i_ctime = CURRENT_TIME; in omfs_new_inode()
55 inode->i_op = &omfs_dir_inops; in omfs_new_inode()
56 inode->i_fop = &omfs_dir_operations; in omfs_new_inode()
57 inode->i_size = sbi->s_sys_blocksize; in omfs_new_inode()
58 inc_nlink(inode); in omfs_new_inode()
61 inode->i_op = &omfs_file_inops; in omfs_new_inode()
62 inode->i_fop = &omfs_file_operations; in omfs_new_inode()
63 inode->i_size = 0; in omfs_new_inode()
67 insert_inode_hash(inode); in omfs_new_inode()
68 mark_inode_dirty(inode); in omfs_new_inode()
69 return inode; in omfs_new_inode()
71 make_bad_inode(inode); in omfs_new_inode()
72 iput(inode); in omfs_new_inode()
100 static int __omfs_write_inode(struct inode *inode, int wait) in __omfs_write_inode() argument
103 struct omfs_sb_info *sbi = OMFS_SB(inode->i_sb); in __omfs_write_inode()
111 bh = omfs_bread(inode->i_sb, inode->i_ino); in __omfs_write_inode()
117 oi->i_head.h_self = cpu_to_be64(inode->i_ino); in __omfs_write_inode()
118 if (S_ISDIR(inode->i_mode)) in __omfs_write_inode()
120 else if (S_ISREG(inode->i_mode)) in __omfs_write_inode()
124 inode->i_mode); in __omfs_write_inode()
133 oi->i_size = cpu_to_be64(inode->i_size); in __omfs_write_inode()
135 ctime = inode->i_ctime.tv_sec * 1000LL + in __omfs_write_inode()
136 ((inode->i_ctime.tv_nsec + 999)/1000); in __omfs_write_inode()
150 bh2 = omfs_bread(inode->i_sb, inode->i_ino + i); in __omfs_write_inode()
170 static int omfs_write_inode(struct inode *inode, struct writeback_control *wbc) in omfs_write_inode() argument
172 return __omfs_write_inode(inode, wbc->sync_mode == WB_SYNC_ALL); in omfs_write_inode()
175 int omfs_sync_inode(struct inode *inode) in omfs_sync_inode() argument
177 return __omfs_write_inode(inode, 1); in omfs_sync_inode()
184 static void omfs_evict_inode(struct inode *inode) in omfs_evict_inode() argument
186 truncate_inode_pages_final(&inode->i_data); in omfs_evict_inode()
187 clear_inode(inode); in omfs_evict_inode()
189 if (inode->i_nlink) in omfs_evict_inode()
192 if (S_ISREG(inode->i_mode)) { in omfs_evict_inode()
193 inode->i_size = 0; in omfs_evict_inode()
194 omfs_shrink_inode(inode); in omfs_evict_inode()
197 omfs_clear_range(inode->i_sb, inode->i_ino, 2); in omfs_evict_inode()
200 struct inode *omfs_iget(struct super_block *sb, ino_t ino) in omfs_iget()
207 struct inode *inode; in omfs_iget() local
209 inode = iget_locked(sb, ino); in omfs_iget()
210 if (!inode) in omfs_iget()
212 if (!(inode->i_state & I_NEW)) in omfs_iget()
213 return inode; in omfs_iget()
215 bh = omfs_bread(inode->i_sb, ino); in omfs_iget()
225 inode->i_uid = sbi->s_uid; in omfs_iget()
226 inode->i_gid = sbi->s_gid; in omfs_iget()
231 inode->i_atime.tv_sec = ctime; in omfs_iget()
232 inode->i_mtime.tv_sec = ctime; in omfs_iget()
233 inode->i_ctime.tv_sec = ctime; in omfs_iget()
234 inode->i_atime.tv_nsec = nsecs; in omfs_iget()
235 inode->i_mtime.tv_nsec = nsecs; in omfs_iget()
236 inode->i_ctime.tv_nsec = nsecs; in omfs_iget()
238 inode->i_mapping->a_ops = &omfs_aops; in omfs_iget()
242 inode->i_mode = S_IFDIR | (S_IRWXUGO & ~sbi->s_dmask); in omfs_iget()
243 inode->i_op = &omfs_dir_inops; in omfs_iget()
244 inode->i_fop = &omfs_dir_operations; in omfs_iget()
245 inode->i_size = sbi->s_sys_blocksize; in omfs_iget()
246 inc_nlink(inode); in omfs_iget()
249 inode->i_mode = S_IFREG | (S_IRWXUGO & ~sbi->s_fmask); in omfs_iget()
250 inode->i_fop = &omfs_file_operations; in omfs_iget()
251 inode->i_size = be64_to_cpu(oi->i_size); in omfs_iget()
255 unlock_new_inode(inode); in omfs_iget()
256 return inode; in omfs_iget()
260 iget_failed(inode); in omfs_iget()
433 struct inode *root; in omfs_fill_super()