Lines Matching refs:inode

55 static int ocfs2_read_locked_inode(struct inode *inode,
57 static int ocfs2_init_locked_inode(struct inode *inode, void *opaque);
58 static int ocfs2_find_actor(struct inode *inode, void *opaque);
60 struct inode *inode,
63 static int ocfs2_filecheck_read_inode_block_full(struct inode *inode,
71 void ocfs2_set_inode_flags(struct inode *inode) in ocfs2_set_inode_flags() argument
73 unsigned int flags = OCFS2_I(inode)->ip_attr; in ocfs2_set_inode_flags()
75 inode->i_flags &= ~(S_IMMUTABLE | in ocfs2_set_inode_flags()
79 inode->i_flags |= S_IMMUTABLE; in ocfs2_set_inode_flags()
82 inode->i_flags |= S_SYNC; in ocfs2_set_inode_flags()
84 inode->i_flags |= S_APPEND; in ocfs2_set_inode_flags()
86 inode->i_flags |= S_NOATIME; in ocfs2_set_inode_flags()
88 inode->i_flags |= S_DIRSYNC; in ocfs2_set_inode_flags()
110 struct inode *ocfs2_ilookup(struct super_block *sb, u64 blkno) in ocfs2_ilookup()
121 struct inode *ocfs2_iget(struct ocfs2_super *osb, u64 blkno, unsigned flags, in ocfs2_iget()
125 struct inode *inode = NULL; in ocfs2_iget() local
137 inode = ERR_PTR(-EINVAL); in ocfs2_iget()
138 mlog_errno(PTR_ERR(inode)); in ocfs2_iget()
147 inode = iget5_locked(sb, args.fi_ino, ocfs2_find_actor, in ocfs2_iget()
152 if (inode == NULL) { in ocfs2_iget()
153 inode = ERR_PTR(-ENOMEM); in ocfs2_iget()
154 mlog_errno(PTR_ERR(inode)); in ocfs2_iget()
157 trace_ocfs2_iget5_locked(inode->i_state); in ocfs2_iget()
158 if (inode->i_state & I_NEW) { in ocfs2_iget()
159 rc = ocfs2_read_locked_inode(inode, &args); in ocfs2_iget()
160 unlock_new_inode(inode); in ocfs2_iget()
162 if (is_bad_inode(inode)) { in ocfs2_iget()
163 iput(inode); in ocfs2_iget()
164 inode = ERR_PTR(rc); in ocfs2_iget()
178 struct ocfs2_inode_info *oi = OCFS2_I(inode); in ocfs2_iget()
195 if (!IS_ERR(inode)) { in ocfs2_iget()
196 trace_ocfs2_iget_end(inode, in ocfs2_iget()
197 (unsigned long long)OCFS2_I(inode)->ip_blkno); in ocfs2_iget()
200 return inode; in ocfs2_iget()
211 static int ocfs2_find_actor(struct inode *inode, void *opaque) in ocfs2_find_actor() argument
214 struct ocfs2_inode_info *oi = OCFS2_I(inode); in ocfs2_find_actor()
219 mlog_bug_on_msg(!inode, "No inode in find actor!\n"); in ocfs2_find_actor()
221 trace_ocfs2_find_actor(inode, inode->i_ino, opaque, args->fi_blkno); in ocfs2_find_actor()
236 static int ocfs2_init_locked_inode(struct inode *inode, void *opaque) in ocfs2_init_locked_inode() argument
242 inode->i_ino = args->fi_ino; in ocfs2_init_locked_inode()
243 OCFS2_I(inode)->ip_blkno = args->fi_blkno; in ocfs2_init_locked_inode()
245 lockdep_set_class(&inode->i_rwsem, in ocfs2_init_locked_inode()
251 lockdep_set_class(&OCFS2_I(inode)->ip_alloc_sem, in ocfs2_init_locked_inode()
254 lockdep_set_class(&OCFS2_I(inode)->ip_alloc_sem, in ocfs2_init_locked_inode()
260 void ocfs2_populate_inode(struct inode *inode, struct ocfs2_dinode *fe, in ocfs2_populate_inode() argument
267 sb = inode->i_sb; in ocfs2_populate_inode()
286 OCFS2_I(inode)->ip_clusters = le32_to_cpu(fe->i_clusters); in ocfs2_populate_inode()
287 OCFS2_I(inode)->ip_attr = le32_to_cpu(fe->i_attr); in ocfs2_populate_inode()
288 OCFS2_I(inode)->ip_dyn_features = le16_to_cpu(fe->i_dyn_features); in ocfs2_populate_inode()
290 inode_set_iversion(inode, 1); in ocfs2_populate_inode()
291 inode->i_generation = le32_to_cpu(fe->i_generation); in ocfs2_populate_inode()
292 inode->i_rdev = huge_decode_dev(le64_to_cpu(fe->id1.dev1.i_rdev)); in ocfs2_populate_inode()
293 inode->i_mode = le16_to_cpu(fe->i_mode); in ocfs2_populate_inode()
294 i_uid_write(inode, le32_to_cpu(fe->i_uid)); in ocfs2_populate_inode()
295 i_gid_write(inode, le32_to_cpu(fe->i_gid)); in ocfs2_populate_inode()
298 if (S_ISLNK(inode->i_mode) && !fe->i_clusters) { in ocfs2_populate_inode()
299 inode->i_blocks = 0; in ocfs2_populate_inode()
300 inode->i_mapping->a_ops = &ocfs2_fast_symlink_aops; in ocfs2_populate_inode()
302 inode->i_blocks = ocfs2_inode_sector_count(inode); in ocfs2_populate_inode()
303 inode->i_mapping->a_ops = &ocfs2_aops; in ocfs2_populate_inode()
305 inode->i_atime.tv_sec = le64_to_cpu(fe->i_atime); in ocfs2_populate_inode()
306 inode->i_atime.tv_nsec = le32_to_cpu(fe->i_atime_nsec); in ocfs2_populate_inode()
307 inode->i_mtime.tv_sec = le64_to_cpu(fe->i_mtime); in ocfs2_populate_inode()
308 inode->i_mtime.tv_nsec = le32_to_cpu(fe->i_mtime_nsec); in ocfs2_populate_inode()
309 inode_set_ctime(inode, le64_to_cpu(fe->i_ctime), in ocfs2_populate_inode()
312 if (OCFS2_I(inode)->ip_blkno != le64_to_cpu(fe->i_blkno)) in ocfs2_populate_inode()
315 (unsigned long long)OCFS2_I(inode)->ip_blkno, in ocfs2_populate_inode()
318 set_nlink(inode, ocfs2_read_links_count(fe)); in ocfs2_populate_inode()
320 trace_ocfs2_populate_inode(OCFS2_I(inode)->ip_blkno, in ocfs2_populate_inode()
323 OCFS2_I(inode)->ip_flags |= OCFS2_INODE_SYSTEM_FILE; in ocfs2_populate_inode()
324 inode->i_flags |= S_NOQUOTA; in ocfs2_populate_inode()
328 OCFS2_I(inode)->ip_flags |= OCFS2_INODE_BITMAP; in ocfs2_populate_inode()
330 OCFS2_I(inode)->ip_flags |= OCFS2_INODE_BITMAP; in ocfs2_populate_inode()
332 inode->i_flags |= S_NOQUOTA; in ocfs2_populate_inode()
339 switch (inode->i_mode & S_IFMT) { in ocfs2_populate_inode()
342 inode->i_fop = &ocfs2_fops; in ocfs2_populate_inode()
344 inode->i_fop = &ocfs2_fops_no_plocks; in ocfs2_populate_inode()
345 inode->i_op = &ocfs2_file_iops; in ocfs2_populate_inode()
346 i_size_write(inode, le64_to_cpu(fe->i_size)); in ocfs2_populate_inode()
349 inode->i_op = &ocfs2_dir_iops; in ocfs2_populate_inode()
351 inode->i_fop = &ocfs2_dops; in ocfs2_populate_inode()
353 inode->i_fop = &ocfs2_dops_no_plocks; in ocfs2_populate_inode()
354 i_size_write(inode, le64_to_cpu(fe->i_size)); in ocfs2_populate_inode()
355 OCFS2_I(inode)->ip_dir_lock_gen = 1; in ocfs2_populate_inode()
358 inode->i_op = &ocfs2_symlink_inode_operations; in ocfs2_populate_inode()
359 inode_nohighmem(inode); in ocfs2_populate_inode()
360 i_size_write(inode, le64_to_cpu(fe->i_size)); in ocfs2_populate_inode()
363 inode->i_op = &ocfs2_special_file_iops; in ocfs2_populate_inode()
364 init_special_inode(inode, inode->i_mode, in ocfs2_populate_inode()
365 inode->i_rdev); in ocfs2_populate_inode()
370 inode->i_ino = ino_from_blkno(inode->i_sb, in ocfs2_populate_inode()
380 ocfs2_inode_lock_res_init(&OCFS2_I(inode)->ip_inode_lockres, in ocfs2_populate_inode()
381 OCFS2_LOCK_TYPE_META, 0, inode); in ocfs2_populate_inode()
383 ocfs2_inode_lock_res_init(&OCFS2_I(inode)->ip_open_lockres, in ocfs2_populate_inode()
384 OCFS2_LOCK_TYPE_OPEN, 0, inode); in ocfs2_populate_inode()
387 ocfs2_inode_lock_res_init(&OCFS2_I(inode)->ip_rw_lockres, in ocfs2_populate_inode()
388 OCFS2_LOCK_TYPE_RW, inode->i_generation, in ocfs2_populate_inode()
389 inode); in ocfs2_populate_inode()
391 ocfs2_set_inode_flags(inode); in ocfs2_populate_inode()
393 OCFS2_I(inode)->ip_last_used_slot = 0; in ocfs2_populate_inode()
394 OCFS2_I(inode)->ip_last_used_group = 0; in ocfs2_populate_inode()
396 if (S_ISDIR(inode->i_mode)) in ocfs2_populate_inode()
397 ocfs2_resv_set_type(&OCFS2_I(inode)->ip_la_data_resv, in ocfs2_populate_inode()
401 static int ocfs2_read_locked_inode(struct inode *inode, in ocfs2_read_locked_inode() argument
412 sb = inode->i_sb; in ocfs2_read_locked_inode()
449 (unsigned long long)OCFS2_I(inode)->ip_blkno, can_lock); in ocfs2_read_locked_inode()
461 ocfs2_inode_lock_res_init(&OCFS2_I(inode)->ip_inode_lockres, in ocfs2_read_locked_inode()
463 generation, inode); in ocfs2_read_locked_inode()
465 ocfs2_inode_lock_res_init(&OCFS2_I(inode)->ip_open_lockres, in ocfs2_read_locked_inode()
467 0, inode); in ocfs2_read_locked_inode()
470 status = ocfs2_open_lock(inode); in ocfs2_read_locked_inode()
472 make_bad_inode(inode); in ocfs2_read_locked_inode()
476 status = ocfs2_inode_lock(inode, NULL, lock_level); in ocfs2_read_locked_inode()
478 make_bad_inode(inode); in ocfs2_read_locked_inode()
485 status = ocfs2_try_open_lock(inode, 0); in ocfs2_read_locked_inode()
487 make_bad_inode(inode); in ocfs2_read_locked_inode()
494 status = ocfs2_filecheck_read_inode_block_full(inode, in ocfs2_read_locked_inode()
497 status = ocfs2_filecheck_read_inode_block_full(inode, in ocfs2_read_locked_inode()
500 status = ocfs2_read_inode_block_full(inode, in ocfs2_read_locked_inode()
540 inode->i_rdev = huge_decode_dev(le64_to_cpu(fe->id1.dev1.i_rdev)); in ocfs2_read_locked_inode()
542 ocfs2_populate_inode(inode, fe, 0); in ocfs2_read_locked_inode()
548 ocfs2_inode_unlock(inode, lock_level); in ocfs2_read_locked_inode()
550 ocfs2_inode_lock(inode, NULL, lock_level); in ocfs2_read_locked_inode()
552 status = ocfs2_write_block(osb, bh, INODE_CACHE(inode)); in ocfs2_read_locked_inode()
563 ocfs2_inode_unlock(inode, lock_level); in ocfs2_read_locked_inode()
566 make_bad_inode(inode); in ocfs2_read_locked_inode()
579 struct inode *inode, in ocfs2_truncate_for_delete() argument
593 if (ocfs2_should_order_data(inode)) in ocfs2_truncate_for_delete()
594 ocfs2_begin_ordered_truncate(inode, 0); in ocfs2_truncate_for_delete()
604 status = ocfs2_journal_access_di(handle, INODE_CACHE(inode), in ocfs2_truncate_for_delete()
612 i_size_write(inode, 0); in ocfs2_truncate_for_delete()
614 status = ocfs2_mark_inode_dirty(handle, inode, fe_bh); in ocfs2_truncate_for_delete()
623 status = ocfs2_commit_truncate(osb, inode, fe_bh); in ocfs2_truncate_for_delete()
634 static int ocfs2_remove_inode(struct inode *inode, in ocfs2_remove_inode() argument
636 struct inode *orphan_dir_inode, in ocfs2_remove_inode()
640 struct inode *inode_alloc_inode = NULL; in ocfs2_remove_inode()
643 struct ocfs2_super *osb = OCFS2_SB(inode->i_sb); in ocfs2_remove_inode()
665 ocfs2_quota_trans_credits(inode->i_sb)); in ocfs2_remove_inode()
672 if (!(OCFS2_I(inode)->ip_flags & OCFS2_INODE_SKIP_ORPHAN_DIR)) { in ocfs2_remove_inode()
673 status = ocfs2_orphan_del(osb, handle, orphan_dir_inode, inode, in ocfs2_remove_inode()
682 status = ocfs2_journal_access_di(handle, INODE_CACHE(inode), di_bh, in ocfs2_remove_inode()
693 ocfs2_remove_from_cache(INODE_CACHE(inode), di_bh); in ocfs2_remove_inode()
694 dquot_free_inode(inode); in ocfs2_remove_inode()
748 static int ocfs2_wipe_inode(struct inode *inode, in ocfs2_wipe_inode() argument
752 struct inode *orphan_dir_inode = NULL; in ocfs2_wipe_inode()
754 struct ocfs2_super *osb = OCFS2_SB(inode->i_sb); in ocfs2_wipe_inode()
757 if (!(OCFS2_I(inode)->ip_flags & OCFS2_INODE_SKIP_ORPHAN_DIR)) { in ocfs2_wipe_inode()
790 status = ocfs2_truncate_for_delete(osb, inode, di_bh); in ocfs2_wipe_inode()
797 if (S_ISDIR(inode->i_mode)) { in ocfs2_wipe_inode()
798 status = ocfs2_dx_dir_truncate(inode, di_bh); in ocfs2_wipe_inode()
806 status = ocfs2_xattr_remove(inode, di_bh); in ocfs2_wipe_inode()
812 status = ocfs2_remove_refcount_tree(inode, di_bh); in ocfs2_wipe_inode()
818 status = ocfs2_remove_inode(inode, di_bh, orphan_dir_inode, in ocfs2_wipe_inode()
824 if (OCFS2_I(inode)->ip_flags & OCFS2_INODE_SKIP_ORPHAN_DIR) in ocfs2_wipe_inode()
839 static int ocfs2_inode_is_valid_to_delete(struct inode *inode) in ocfs2_inode_is_valid_to_delete() argument
842 struct ocfs2_inode_info *oi = OCFS2_I(inode); in ocfs2_inode_is_valid_to_delete()
843 struct ocfs2_super *osb = OCFS2_SB(inode->i_sb); in ocfs2_inode_is_valid_to_delete()
851 if (inode == osb->root_inode) { in ocfs2_inode_is_valid_to_delete()
887 static int ocfs2_query_inode_wipe(struct inode *inode, in ocfs2_query_inode_wipe() argument
892 struct ocfs2_inode_info *oi = OCFS2_I(inode); in ocfs2_query_inode_wipe()
898 inode->i_nlink); in ocfs2_query_inode_wipe()
903 if (!ocfs2_inode_is_valid_to_delete(inode)) { in ocfs2_query_inode_wipe()
910 if (inode->i_nlink) in ocfs2_query_inode_wipe()
960 status = ocfs2_try_open_lock(inode, 1); in ocfs2_query_inode_wipe()
982 static void ocfs2_cleanup_delete_inode(struct inode *inode, in ocfs2_cleanup_delete_inode() argument
986 (unsigned long long)OCFS2_I(inode)->ip_blkno, sync_data); in ocfs2_cleanup_delete_inode()
988 filemap_write_and_wait(inode->i_mapping); in ocfs2_cleanup_delete_inode()
989 truncate_inode_pages_final(&inode->i_data); in ocfs2_cleanup_delete_inode()
992 static void ocfs2_delete_inode(struct inode *inode) in ocfs2_delete_inode() argument
999 trace_ocfs2_delete_inode(inode->i_ino, in ocfs2_delete_inode()
1000 (unsigned long long)OCFS2_I(inode)->ip_blkno, in ocfs2_delete_inode()
1001 is_bad_inode(inode)); in ocfs2_delete_inode()
1006 if (is_bad_inode(inode) || !OCFS2_I(inode)->ip_blkno) in ocfs2_delete_inode()
1009 if (!ocfs2_inode_is_valid_to_delete(inode)) { in ocfs2_delete_inode()
1013 ocfs2_cleanup_delete_inode(inode, 0); in ocfs2_delete_inode()
1017 dquot_initialize(inode); in ocfs2_delete_inode()
1030 status = ocfs2_nfs_sync_lock(OCFS2_SB(inode->i_sb), 0); in ocfs2_delete_inode()
1033 ocfs2_cleanup_delete_inode(inode, 0); in ocfs2_delete_inode()
1044 status = ocfs2_inode_lock(inode, &di_bh, 1); in ocfs2_delete_inode()
1048 ocfs2_cleanup_delete_inode(inode, 0); in ocfs2_delete_inode()
1056 ocfs2_cleanup_delete_inode(inode, 0); in ocfs2_delete_inode()
1062 status = ocfs2_query_inode_wipe(inode, di_bh, &wipe); in ocfs2_delete_inode()
1073 ocfs2_cleanup_delete_inode(inode, 1); in ocfs2_delete_inode()
1077 ocfs2_cleanup_delete_inode(inode, 0); in ocfs2_delete_inode()
1079 status = ocfs2_wipe_inode(inode, di_bh); in ocfs2_delete_inode()
1095 OCFS2_I(inode)->ip_flags |= OCFS2_INODE_DELETED; in ocfs2_delete_inode()
1098 ocfs2_inode_unlock(inode, 1); in ocfs2_delete_inode()
1102 ocfs2_nfs_sync_unlock(OCFS2_SB(inode->i_sb), 0); in ocfs2_delete_inode()
1110 static void ocfs2_clear_inode(struct inode *inode) in ocfs2_clear_inode() argument
1113 struct ocfs2_inode_info *oi = OCFS2_I(inode); in ocfs2_clear_inode()
1114 struct ocfs2_super *osb = OCFS2_SB(inode->i_sb); in ocfs2_clear_inode()
1116 clear_inode(inode); in ocfs2_clear_inode()
1118 inode->i_nlink); in ocfs2_clear_inode()
1121 "Inode=%lu\n", inode->i_ino); in ocfs2_clear_inode()
1123 dquot_drop(inode); in ocfs2_clear_inode()
1127 ocfs2_open_unlock(inode); in ocfs2_clear_inode()
1146 ocfs2_checkpoint_inode(inode); in ocfs2_clear_inode()
1155 ocfs2_extent_map_trunc(inode, 0); in ocfs2_clear_inode()
1157 status = ocfs2_drop_inode_locks(inode); in ocfs2_clear_inode()
1165 ocfs2_metadata_cache_exit(INODE_CACHE(inode)); in ocfs2_clear_inode()
1167 mlog_bug_on_msg(INODE_CACHE(inode)->ci_num_cached, in ocfs2_clear_inode()
1170 INODE_CACHE(inode)->ci_num_cached); in ocfs2_clear_inode()
1172 mlog_bug_on_msg(!(INODE_CACHE(inode)->ci_flags & OCFS2_CACHE_FL_INLINE), in ocfs2_clear_inode()
1212 void ocfs2_evict_inode(struct inode *inode) in ocfs2_evict_inode() argument
1214 if (!inode->i_nlink || in ocfs2_evict_inode()
1215 (OCFS2_I(inode)->ip_flags & OCFS2_INODE_MAYBE_ORPHANED)) { in ocfs2_evict_inode()
1216 ocfs2_delete_inode(inode); in ocfs2_evict_inode()
1218 truncate_inode_pages_final(&inode->i_data); in ocfs2_evict_inode()
1220 ocfs2_clear_inode(inode); in ocfs2_evict_inode()
1226 int ocfs2_drop_inode(struct inode *inode) in ocfs2_drop_inode() argument
1228 struct ocfs2_inode_info *oi = OCFS2_I(inode); in ocfs2_drop_inode()
1231 inode->i_nlink, oi->ip_flags); in ocfs2_drop_inode()
1233 assert_spin_locked(&inode->i_lock); in ocfs2_drop_inode()
1234 inode->i_state |= I_WILL_FREE; in ocfs2_drop_inode()
1235 spin_unlock(&inode->i_lock); in ocfs2_drop_inode()
1236 write_inode_now(inode, 1); in ocfs2_drop_inode()
1237 spin_lock(&inode->i_lock); in ocfs2_drop_inode()
1238 WARN_ON(inode->i_state & I_NEW); in ocfs2_drop_inode()
1239 inode->i_state &= ~I_WILL_FREE; in ocfs2_drop_inode()
1249 struct inode *inode = d_inode(dentry); in ocfs2_inode_revalidate() local
1252 trace_ocfs2_inode_revalidate(inode, in ocfs2_inode_revalidate()
1253 inode ? (unsigned long long)OCFS2_I(inode)->ip_blkno : 0ULL, in ocfs2_inode_revalidate()
1254 inode ? (unsigned long long)OCFS2_I(inode)->ip_flags : 0); in ocfs2_inode_revalidate()
1256 if (!inode) { in ocfs2_inode_revalidate()
1261 spin_lock(&OCFS2_I(inode)->ip_lock); in ocfs2_inode_revalidate()
1262 if (OCFS2_I(inode)->ip_flags & OCFS2_INODE_DELETED) { in ocfs2_inode_revalidate()
1263 spin_unlock(&OCFS2_I(inode)->ip_lock); in ocfs2_inode_revalidate()
1267 spin_unlock(&OCFS2_I(inode)->ip_lock); in ocfs2_inode_revalidate()
1271 status = ocfs2_inode_lock(inode, NULL, 0); in ocfs2_inode_revalidate()
1277 ocfs2_inode_unlock(inode, 0); in ocfs2_inode_revalidate()
1288 struct inode *inode, in ocfs2_mark_inode_dirty() argument
1294 trace_ocfs2_mark_inode_dirty((unsigned long long)OCFS2_I(inode)->ip_blkno); in ocfs2_mark_inode_dirty()
1296 status = ocfs2_journal_access_di(handle, INODE_CACHE(inode), bh, in ocfs2_mark_inode_dirty()
1303 spin_lock(&OCFS2_I(inode)->ip_lock); in ocfs2_mark_inode_dirty()
1304 fe->i_clusters = cpu_to_le32(OCFS2_I(inode)->ip_clusters); in ocfs2_mark_inode_dirty()
1305 ocfs2_get_inode_flags(OCFS2_I(inode)); in ocfs2_mark_inode_dirty()
1306 fe->i_attr = cpu_to_le32(OCFS2_I(inode)->ip_attr); in ocfs2_mark_inode_dirty()
1307 fe->i_dyn_features = cpu_to_le16(OCFS2_I(inode)->ip_dyn_features); in ocfs2_mark_inode_dirty()
1308 spin_unlock(&OCFS2_I(inode)->ip_lock); in ocfs2_mark_inode_dirty()
1310 fe->i_size = cpu_to_le64(i_size_read(inode)); in ocfs2_mark_inode_dirty()
1311 ocfs2_set_links_count(fe, inode->i_nlink); in ocfs2_mark_inode_dirty()
1312 fe->i_uid = cpu_to_le32(i_uid_read(inode)); in ocfs2_mark_inode_dirty()
1313 fe->i_gid = cpu_to_le32(i_gid_read(inode)); in ocfs2_mark_inode_dirty()
1314 fe->i_mode = cpu_to_le16(inode->i_mode); in ocfs2_mark_inode_dirty()
1315 fe->i_atime = cpu_to_le64(inode->i_atime.tv_sec); in ocfs2_mark_inode_dirty()
1316 fe->i_atime_nsec = cpu_to_le32(inode->i_atime.tv_nsec); in ocfs2_mark_inode_dirty()
1317 fe->i_ctime = cpu_to_le64(inode_get_ctime(inode).tv_sec); in ocfs2_mark_inode_dirty()
1318 fe->i_ctime_nsec = cpu_to_le32(inode_get_ctime(inode).tv_nsec); in ocfs2_mark_inode_dirty()
1319 fe->i_mtime = cpu_to_le64(inode->i_mtime.tv_sec); in ocfs2_mark_inode_dirty()
1320 fe->i_mtime_nsec = cpu_to_le32(inode->i_mtime.tv_nsec); in ocfs2_mark_inode_dirty()
1323 ocfs2_update_inode_fsync_trans(handle, inode, 1); in ocfs2_mark_inode_dirty()
1333 void ocfs2_refresh_inode(struct inode *inode, in ocfs2_refresh_inode() argument
1336 spin_lock(&OCFS2_I(inode)->ip_lock); in ocfs2_refresh_inode()
1338 OCFS2_I(inode)->ip_clusters = le32_to_cpu(fe->i_clusters); in ocfs2_refresh_inode()
1339 OCFS2_I(inode)->ip_attr = le32_to_cpu(fe->i_attr); in ocfs2_refresh_inode()
1340 OCFS2_I(inode)->ip_dyn_features = le16_to_cpu(fe->i_dyn_features); in ocfs2_refresh_inode()
1341 ocfs2_set_inode_flags(inode); in ocfs2_refresh_inode()
1342 i_size_write(inode, le64_to_cpu(fe->i_size)); in ocfs2_refresh_inode()
1343 set_nlink(inode, ocfs2_read_links_count(fe)); in ocfs2_refresh_inode()
1344 i_uid_write(inode, le32_to_cpu(fe->i_uid)); in ocfs2_refresh_inode()
1345 i_gid_write(inode, le32_to_cpu(fe->i_gid)); in ocfs2_refresh_inode()
1346 inode->i_mode = le16_to_cpu(fe->i_mode); in ocfs2_refresh_inode()
1347 if (S_ISLNK(inode->i_mode) && le32_to_cpu(fe->i_clusters) == 0) in ocfs2_refresh_inode()
1348 inode->i_blocks = 0; in ocfs2_refresh_inode()
1350 inode->i_blocks = ocfs2_inode_sector_count(inode); in ocfs2_refresh_inode()
1351 inode->i_atime.tv_sec = le64_to_cpu(fe->i_atime); in ocfs2_refresh_inode()
1352 inode->i_atime.tv_nsec = le32_to_cpu(fe->i_atime_nsec); in ocfs2_refresh_inode()
1353 inode->i_mtime.tv_sec = le64_to_cpu(fe->i_mtime); in ocfs2_refresh_inode()
1354 inode->i_mtime.tv_nsec = le32_to_cpu(fe->i_mtime_nsec); in ocfs2_refresh_inode()
1355 inode_set_ctime(inode, le64_to_cpu(fe->i_ctime), in ocfs2_refresh_inode()
1358 spin_unlock(&OCFS2_I(inode)->ip_lock); in ocfs2_refresh_inode()
1562 ocfs2_filecheck_read_inode_block_full(struct inode *inode, in ocfs2_filecheck_read_inode_block_full() argument
1570 rc = ocfs2_read_blocks(INODE_CACHE(inode), in ocfs2_filecheck_read_inode_block_full()
1571 OCFS2_I(inode)->ip_blkno, in ocfs2_filecheck_read_inode_block_full()
1575 rc = ocfs2_read_blocks(INODE_CACHE(inode), in ocfs2_filecheck_read_inode_block_full()
1576 OCFS2_I(inode)->ip_blkno, in ocfs2_filecheck_read_inode_block_full()
1587 int ocfs2_read_inode_block_full(struct inode *inode, struct buffer_head **bh, in ocfs2_read_inode_block_full() argument
1593 rc = ocfs2_read_blocks(INODE_CACHE(inode), OCFS2_I(inode)->ip_blkno, in ocfs2_read_inode_block_full()
1603 int ocfs2_read_inode_block(struct inode *inode, struct buffer_head **bh) in ocfs2_read_inode_block() argument
1605 return ocfs2_read_inode_block_full(inode, bh, 0); in ocfs2_read_inode_block()