Lines Matching refs:inode

51 	struct inode *inode;  member
67 struct inode *inode) in _pcol_init() argument
69 struct exofs_sb_info *sbi = inode->i_sb->s_fs_info; in _pcol_init()
72 pcol->inode = inode; in _pcol_init()
211 pcol->inode->i_ino, _LLU(good_bytes), pcol->length, in __readpages_done()
216 struct inode *inode = page->mapping->host; in __readpages_done() local
219 if (inode != pcol->inode) in __readpages_done()
228 inode->i_ino, page->index, in __readpages_done()
310 struct exofs_i_info *oi = exofs_i(pcol->inode); in read_exec()
353 pcol->inode->i_ino, _LLU(ios->offset), _LLU(ios->length)); in read_exec()
383 struct inode *inode = pcol->inode; in readpage_strip() local
384 struct exofs_i_info *oi = exofs_i(inode); in readpage_strip()
385 loff_t i_size = i_size_read(inode); in readpage_strip()
394 EXOFS_ERR("PageUptodate(0x%lx, 0x%lx)\n", pcol->inode->i_ino, in readpage_strip()
420 "splitting\n", inode->i_ino, len, in readpage_strip()
449 inode->i_ino, page->index, len); in readpage_strip()
539 pcol->inode->i_ino, _LLU(good_bytes), pcol->length, in writepages_done()
544 struct inode *inode = page->mapping->host; in writepages_done() local
547 if (inode != pcol->inode) in writepages_done()
558 inode->i_ino, page->index, page_stat); in writepages_done()
576 loff_t i_size = i_size_read(pcol->inode); in __r4w_get_page()
584 page = find_get_page(pcol->inode->i_mapping, index); in __r4w_get_page()
586 page = find_or_create_page(pcol->inode->i_mapping, in __r4w_get_page()
626 struct exofs_i_info *oi = exofs_i(pcol->inode); in write_exec()
664 pcol->inode->i_ino, _LLU(ios->offset), _LLU(ios->length)); in write_exec()
696 struct inode *inode = pcol->inode; in writepage_strip() local
697 struct exofs_i_info *oi = exofs_i(inode); in writepage_strip()
698 loff_t i_size = i_size_read(inode); in writepage_strip()
727 inode->i_ino, page->index); in writepage_strip()
744 inode->i_ino, page->index); in writepage_strip()
755 inode->i_ino, page->index, len); in writepage_strip()
780 inode->i_ino, page->index, ret); in writepage_strip()
858 static void _write_failed(struct inode *inode, loff_t to) in _write_failed() argument
860 if (to > inode->i_size) in _write_failed()
861 truncate_pagecache(inode, inode->i_size); in _write_failed()
931 struct inode *inode = mapping->host; in exofs_write_end() local
933 loff_t i_size = inode->i_size; in exofs_write_end()
938 _write_failed(inode, pos + len); in exofs_write_end()
941 if (i_size != inode->i_size) in exofs_write_end()
942 mark_inode_dirty(inode); in exofs_write_end()
998 static inline int exofs_inode_is_fast_symlink(struct inode *inode) in exofs_inode_is_fast_symlink() argument
1000 struct exofs_i_info *oi = exofs_i(inode); in exofs_inode_is_fast_symlink()
1002 return S_ISLNK(inode->i_mode) && (oi->i_data[0] != 0); in exofs_inode_is_fast_symlink()
1005 static int _do_truncate(struct inode *inode, loff_t newsize) in _do_truncate() argument
1007 struct exofs_i_info *oi = exofs_i(inode); in _do_truncate()
1008 struct exofs_sb_info *sbi = inode->i_sb->s_fs_info; in _do_truncate()
1011 inode->i_mtime = inode->i_ctime = CURRENT_TIME; in _do_truncate()
1015 truncate_setsize(inode, newsize); in _do_truncate()
1018 inode->i_ino, newsize, ret); in _do_truncate()
1028 struct inode *inode = d_inode(dentry); in exofs_setattr() local
1034 error = wait_obj_created(exofs_i(inode)); in exofs_setattr()
1038 error = inode_change_ok(inode, iattr); in exofs_setattr()
1043 iattr->ia_size != i_size_read(inode)) { in exofs_setattr()
1044 error = _do_truncate(inode, iattr->ia_size); in exofs_setattr()
1049 setattr_copy(inode, iattr); in exofs_setattr()
1050 mark_inode_dirty(inode); in exofs_setattr()
1068 struct exofs_fcb *inode) in exofs_get_inode() argument
1096 memset(inode, 0, sizeof(*inode)); in exofs_get_inode()
1097 inode->i_mode = 0040000 | (0777 & ~022); in exofs_get_inode()
1111 memcpy(inode, attrs[0].val_ptr, EXOFS_INO_ATTR_SIZE); in exofs_get_inode()
1156 struct inode *exofs_iget(struct super_block *sb, unsigned long ino) in exofs_iget()
1160 struct inode *inode; in exofs_iget() local
1163 inode = iget_locked(sb, ino); in exofs_iget()
1164 if (!inode) in exofs_iget()
1166 if (!(inode->i_state & I_NEW)) in exofs_iget()
1167 return inode; in exofs_iget()
1168 oi = exofs_i(inode); in exofs_iget()
1181 inode->i_mode = le16_to_cpu(fcb.i_mode); in exofs_iget()
1182 i_uid_write(inode, le32_to_cpu(fcb.i_uid)); in exofs_iget()
1183 i_gid_write(inode, le32_to_cpu(fcb.i_gid)); in exofs_iget()
1184 set_nlink(inode, le16_to_cpu(fcb.i_links_count)); in exofs_iget()
1185 inode->i_ctime.tv_sec = (signed)le32_to_cpu(fcb.i_ctime); in exofs_iget()
1186 inode->i_atime.tv_sec = (signed)le32_to_cpu(fcb.i_atime); in exofs_iget()
1187 inode->i_mtime.tv_sec = (signed)le32_to_cpu(fcb.i_mtime); in exofs_iget()
1188 inode->i_ctime.tv_nsec = in exofs_iget()
1189 inode->i_atime.tv_nsec = inode->i_mtime.tv_nsec = 0; in exofs_iget()
1191 i_size_write(inode, oi->i_commit_size); in exofs_iget()
1192 inode->i_blkbits = EXOFS_BLKSHIFT; in exofs_iget()
1193 inode->i_generation = le32_to_cpu(fcb.i_generation); in exofs_iget()
1197 if ((inode->i_nlink == 0) && (inode->i_mode == 0)) { in exofs_iget()
1202 if (S_ISCHR(inode->i_mode) || S_ISBLK(inode->i_mode)) { in exofs_iget()
1204 inode->i_rdev = in exofs_iget()
1207 inode->i_rdev = in exofs_iget()
1213 if (S_ISREG(inode->i_mode)) { in exofs_iget()
1214 inode->i_op = &exofs_file_inode_operations; in exofs_iget()
1215 inode->i_fop = &exofs_file_operations; in exofs_iget()
1216 inode->i_mapping->a_ops = &exofs_aops; in exofs_iget()
1217 } else if (S_ISDIR(inode->i_mode)) { in exofs_iget()
1218 inode->i_op = &exofs_dir_inode_operations; in exofs_iget()
1219 inode->i_fop = &exofs_dir_operations; in exofs_iget()
1220 inode->i_mapping->a_ops = &exofs_aops; in exofs_iget()
1221 } else if (S_ISLNK(inode->i_mode)) { in exofs_iget()
1222 if (exofs_inode_is_fast_symlink(inode)) { in exofs_iget()
1223 inode->i_op = &simple_symlink_inode_operations; in exofs_iget()
1224 inode->i_link = (char *)oi->i_data; in exofs_iget()
1226 inode->i_op = &page_symlink_inode_operations; in exofs_iget()
1227 inode->i_mapping->a_ops = &exofs_aops; in exofs_iget()
1230 inode->i_op = &exofs_special_inode_operations; in exofs_iget()
1232 init_special_inode(inode, inode->i_mode, in exofs_iget()
1235 init_special_inode(inode, inode->i_mode, in exofs_iget()
1239 unlock_new_inode(inode); in exofs_iget()
1240 return inode; in exofs_iget()
1243 iget_failed(inode); in exofs_iget()
1265 struct inode *inode = p; in create_done() local
1266 struct exofs_i_info *oi = exofs_i(inode); in create_done()
1267 struct exofs_sb_info *sbi = inode->i_sb->s_fs_info; in create_done()
1295 struct inode *exofs_new_inode(struct inode *dir, umode_t mode) in exofs_new_inode()
1299 struct inode *inode; in exofs_new_inode() local
1304 inode = new_inode(sb); in exofs_new_inode()
1305 if (!inode) in exofs_new_inode()
1308 oi = exofs_i(inode); in exofs_new_inode()
1313 inode_init_owner(inode, dir, mode); in exofs_new_inode()
1314 inode->i_ino = sbi->s_nextid++; in exofs_new_inode()
1315 inode->i_blkbits = EXOFS_BLKSHIFT; in exofs_new_inode()
1316 inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME; in exofs_new_inode()
1317 oi->i_commit_size = inode->i_size = 0; in exofs_new_inode()
1319 inode->i_generation = sbi->s_next_generation++; in exofs_new_inode()
1321 insert_inode_hash(inode); in exofs_new_inode()
1327 mark_inode_dirty(inode); in exofs_new_inode()
1336 ios->private = inode; in exofs_new_inode()
1345 return inode; in exofs_new_inode()
1374 static int exofs_update_inode(struct inode *inode, int do_sync) in exofs_update_inode() argument
1376 struct exofs_i_info *oi = exofs_i(inode); in exofs_update_inode()
1377 struct super_block *sb = inode->i_sb; in exofs_update_inode()
1393 fcb->i_mode = cpu_to_le16(inode->i_mode); in exofs_update_inode()
1394 fcb->i_uid = cpu_to_le32(i_uid_read(inode)); in exofs_update_inode()
1395 fcb->i_gid = cpu_to_le32(i_gid_read(inode)); in exofs_update_inode()
1396 fcb->i_links_count = cpu_to_le16(inode->i_nlink); in exofs_update_inode()
1397 fcb->i_ctime = cpu_to_le32(inode->i_ctime.tv_sec); in exofs_update_inode()
1398 fcb->i_atime = cpu_to_le32(inode->i_atime.tv_sec); in exofs_update_inode()
1399 fcb->i_mtime = cpu_to_le32(inode->i_mtime.tv_sec); in exofs_update_inode()
1400 oi->i_commit_size = i_size_read(inode); in exofs_update_inode()
1402 fcb->i_generation = cpu_to_le32(inode->i_generation); in exofs_update_inode()
1404 if (S_ISCHR(inode->i_mode) || S_ISBLK(inode->i_mode)) { in exofs_update_inode()
1405 if (old_valid_dev(inode->i_rdev)) { in exofs_update_inode()
1407 cpu_to_le32(old_encode_dev(inode->i_rdev)); in exofs_update_inode()
1412 cpu_to_le32(new_encode_dev(inode->i_rdev)); in exofs_update_inode()
1448 inode->i_ino, do_sync, ret); in exofs_update_inode()
1452 int exofs_write_inode(struct inode *inode, struct writeback_control *wbc) in exofs_write_inode() argument
1455 return exofs_update_inode(inode, 1); in exofs_write_inode()
1476 void exofs_evict_inode(struct inode *inode) in exofs_evict_inode() argument
1478 struct exofs_i_info *oi = exofs_i(inode); in exofs_evict_inode()
1479 struct super_block *sb = inode->i_sb; in exofs_evict_inode()
1484 truncate_inode_pages_final(&inode->i_data); in exofs_evict_inode()
1487 if (inode->i_nlink || is_bad_inode(inode)) in exofs_evict_inode()
1490 inode->i_size = 0; in exofs_evict_inode()
1491 clear_inode(inode); in exofs_evict_inode()
1521 clear_inode(inode); in exofs_evict_inode()