Lines Matching refs:inode

17 adfs_get_block(struct inode *inode, sector_t block, struct buffer_head *bh,  in adfs_get_block()  argument
21 if (block >= inode->i_blocks) in adfs_get_block()
24 block = __adfs_block_map(inode->i_sb, ADFS_I(inode)->indaddr, in adfs_get_block()
27 map_bh(bh, inode->i_sb, block); in adfs_get_block()
50 struct inode *inode = mapping->host; in adfs_write_failed() local
52 if (to > inode->i_size) in adfs_write_failed()
53 truncate_pagecache(inode, inode->i_size); in adfs_write_failed()
92 adfs_atts2mode(struct super_block *sb, struct inode *inode) in adfs_atts2mode() argument
94 unsigned int attr = ADFS_I(inode)->attr; in adfs_atts2mode()
103 switch (adfs_filetype(ADFS_I(inode)->loadaddr)) { in adfs_atts2mode()
135 static int adfs_mode2atts(struct super_block *sb, struct inode *inode, in adfs_mode2atts() argument
143 if (S_ISLNK(inode->i_mode)) in adfs_mode2atts()
144 return ADFS_I(inode)->attr; in adfs_mode2atts()
147 if (S_ISDIR(inode->i_mode)) in adfs_mode2atts()
175 adfs_adfs2unix_time(struct timespec64 *tv, struct inode *inode) in adfs_adfs2unix_time() argument
183 if (!adfs_inode_is_stamped(inode)) in adfs_adfs2unix_time()
186 high = ADFS_I(inode)->loadaddr & 0xFF; /* top 8 bits of timestamp */ in adfs_adfs2unix_time()
187 low = ADFS_I(inode)->execaddr; /* bottom 32 bits of timestamp */ in adfs_adfs2unix_time()
205 *tv = current_time(inode); in adfs_adfs2unix_time()
214 static void adfs_unix2adfs_time(struct inode *inode, in adfs_unix2adfs_time() argument
227 ADFS_I(inode)->loadaddr &= ~0xff; in adfs_unix2adfs_time()
228 ADFS_I(inode)->loadaddr |= (cs >> 32) & 0xff; in adfs_unix2adfs_time()
229 ADFS_I(inode)->execaddr = cs; in adfs_unix2adfs_time()
244 struct inode *
247 struct inode *inode; in adfs_iget() local
250 inode = new_inode(sb); in adfs_iget()
251 if (!inode) in adfs_iget()
254 inode->i_uid = ADFS_SB(sb)->s_uid; in adfs_iget()
255 inode->i_gid = ADFS_SB(sb)->s_gid; in adfs_iget()
256 inode->i_ino = obj->indaddr; in adfs_iget()
257 inode->i_size = obj->size; in adfs_iget()
258 set_nlink(inode, 2); in adfs_iget()
259 inode->i_blocks = (inode->i_size + sb->s_blocksize - 1) >> in adfs_iget()
268 ADFS_I(inode)->parent_id = obj->parent_id; in adfs_iget()
269 ADFS_I(inode)->indaddr = obj->indaddr; in adfs_iget()
270 ADFS_I(inode)->loadaddr = obj->loadaddr; in adfs_iget()
271 ADFS_I(inode)->execaddr = obj->execaddr; in adfs_iget()
272 ADFS_I(inode)->attr = obj->attr; in adfs_iget()
274 inode->i_mode = adfs_atts2mode(sb, inode); in adfs_iget()
275 adfs_adfs2unix_time(&ts, inode); in adfs_iget()
276 inode_set_atime_to_ts(inode, ts); in adfs_iget()
277 inode_set_mtime_to_ts(inode, ts); in adfs_iget()
278 inode_set_ctime_to_ts(inode, ts); in adfs_iget()
280 if (S_ISDIR(inode->i_mode)) { in adfs_iget()
281 inode->i_op = &adfs_dir_inode_operations; in adfs_iget()
282 inode->i_fop = &adfs_dir_operations; in adfs_iget()
283 } else if (S_ISREG(inode->i_mode)) { in adfs_iget()
284 inode->i_op = &adfs_file_inode_operations; in adfs_iget()
285 inode->i_fop = &adfs_file_operations; in adfs_iget()
286 inode->i_mapping->a_ops = &adfs_aops; in adfs_iget()
287 ADFS_I(inode)->mmu_private = inode->i_size; in adfs_iget()
290 inode_fake_hash(inode); in adfs_iget()
293 return inode; in adfs_iget()
305 struct inode *inode = d_inode(dentry); in adfs_notify_change() local
306 struct super_block *sb = inode->i_sb; in adfs_notify_change()
325 truncate_setsize(inode, attr->ia_size); in adfs_notify_change()
327 if (ia_valid & ATTR_MTIME && adfs_inode_is_stamped(inode)) { in adfs_notify_change()
328 adfs_unix2adfs_time(inode, &attr->ia_mtime); in adfs_notify_change()
329 adfs_adfs2unix_time(&attr->ia_mtime, inode); in adfs_notify_change()
330 inode_set_mtime_to_ts(inode, attr->ia_mtime); in adfs_notify_change()
338 inode_set_atime_to_ts(inode, attr->ia_atime); in adfs_notify_change()
340 inode_set_ctime_to_ts(inode, attr->ia_ctime); in adfs_notify_change()
342 ADFS_I(inode)->attr = adfs_mode2atts(sb, inode, attr->ia_mode); in adfs_notify_change()
343 inode->i_mode = adfs_atts2mode(sb, inode); in adfs_notify_change()
351 mark_inode_dirty(inode); in adfs_notify_change()
361 int adfs_write_inode(struct inode *inode, struct writeback_control *wbc) in adfs_write_inode() argument
363 struct super_block *sb = inode->i_sb; in adfs_write_inode()
366 obj.indaddr = ADFS_I(inode)->indaddr; in adfs_write_inode()
368 obj.parent_id = ADFS_I(inode)->parent_id; in adfs_write_inode()
369 obj.loadaddr = ADFS_I(inode)->loadaddr; in adfs_write_inode()
370 obj.execaddr = ADFS_I(inode)->execaddr; in adfs_write_inode()
371 obj.attr = ADFS_I(inode)->attr; in adfs_write_inode()
372 obj.size = inode->i_size; in adfs_write_inode()