Lines Matching refs:inode

72 #define EXT4_ERROR_INODE(inode, fmt, a...) \  argument
73 ext4_error_inode((inode), __func__, __LINE__, 0, (fmt), ## a)
75 #define EXT4_ERROR_INODE_BLOCK(inode, block, fmt, a...) \ argument
76 ext4_error_inode((inode), __func__, __LINE__, (block), (fmt), ## a)
131 struct inode *inode; member
184 struct inode *inode; /* file being written to */ member
745 #define EXT4_INODE_SET_XTIME(xtime, inode, raw_inode) \ argument
747 (raw_inode)->xtime = cpu_to_le32((inode)->xtime.tv_sec); \
748 if (EXT4_FITS_IN_INODE(raw_inode, EXT4_I(inode), xtime ## _extra)) \
750 ext4_encode_extra_time(&(inode)->xtime); \
762 #define EXT4_INODE_GET_XTIME(xtime, inode, raw_inode) \ argument
764 (inode)->xtime.tv_sec = (signed)le32_to_cpu((raw_inode)->xtime); \
765 if (EXT4_FITS_IN_INODE(raw_inode, EXT4_I(inode), xtime ## _extra)) \
766 ext4_decode_extra_time(&(inode)->xtime, \
769 (inode)->xtime.tv_nsec = 0; \
908 struct inode vfs_inode;
1325 struct inode *s_buddy_cache;
1421 static inline struct ext4_inode_info *EXT4_I(struct inode *inode) in EXT4_I() argument
1423 return container_of(inode, struct ext4_inode_info, vfs_inode); in EXT4_I()
1426 static inline struct timespec ext4_current_time(struct inode *inode) in ext4_current_time() argument
1428 return (inode->i_sb->s_time_gran < NSEC_PER_SEC) ? in ext4_current_time()
1429 current_fs_time(inode->i_sb) : CURRENT_TIME_SEC; in ext4_current_time()
1444 static inline void ext4_set_io_unwritten_flag(struct inode *inode, in ext4_set_io_unwritten_flag() argument
1449 atomic_inc(&EXT4_I(inode)->i_unwritten); in ext4_set_io_unwritten_flag()
1453 static inline ext4_io_end_t *ext4_inode_aio(struct inode *inode) in ext4_inode_aio() argument
1455 return inode->i_private; in ext4_inode_aio()
1458 static inline void ext4_inode_aio_set(struct inode *inode, ext4_io_end_t *io) in ext4_inode_aio_set() argument
1460 inode->i_private = io; in ext4_inode_aio_set()
1483 static inline int ext4_test_inode_##name(struct inode *inode, int bit) \
1485 return test_bit(bit + (offset), &EXT4_I(inode)->i_##field); \
1487 static inline void ext4_set_inode_##name(struct inode *inode, int bit) \
1489 set_bit(bit + (offset), &EXT4_I(inode)->i_##field); \
1491 static inline void ext4_clear_inode_##name(struct inode *inode, int bit) \
1493 clear_bit(bit + (offset), &EXT4_I(inode)->i_##field); \
1498 static inline int ext4_test_inode_flag(struct inode *inode, int bit);
1499 static inline void ext4_set_inode_flag(struct inode *inode, int bit);
1500 static inline void ext4_clear_inode_flag(struct inode *inode, int bit);
1505 static inline int ext4_test_inode_state(struct inode *inode, int bit);
1506 static inline void ext4_set_inode_state(struct inode *inode, int bit);
1507 static inline void ext4_clear_inode_state(struct inode *inode, int bit);
1533 static inline int ext4_encrypted_inode(struct inode *inode) in ext4_encrypted_inode() argument
1536 return ext4_test_inode_flag(inode, EXT4_INODE_ENCRYPT); in ext4_encrypted_inode()
1542 #define NEXT_ORPHAN(inode) EXT4_I(inode)->i_dtime argument
1708 __le32 inode; /* Inode number */ member
1721 __le32 inode; /* Inode number */ member
2052 extern ext4_fsblk_t ext4_new_meta_blocks(handle_t *handle, struct inode *inode,
2076 ext4_fsblk_t ext4_inode_to_goal_block(struct inode *);
2079 int ext4_is_child_context_consistent_with_parent(struct inode *parent,
2080 struct inode *child);
2081 int ext4_inherit_context(struct inode *parent, struct inode *child);
2084 struct inode *inode);
2085 int ext4_get_policy(struct inode *inode,
2092 struct ext4_crypto_ctx *ext4_get_crypto_ctx(struct inode *inode);
2095 struct page *ext4_encrypt(struct inode *inode,
2098 int ext4_decrypt_one(struct inode *inode, struct page *page);
2099 int ext4_encrypted_zeroout(struct inode *inode, struct ext4_extent *ex);
2145 struct ext4_fname_crypto_ctx *ext4_get_fname_crypto_ctx(struct inode *inode,
2152 struct ext4_fname_crypto_ctx *ext4_get_fname_crypto_ctx(struct inode *inode, in ext4_get_fname_crypto_ctx() argument
2162 int ext4_generate_encryption_key(struct inode *inode);
2165 int ext4_has_encryption_key(struct inode *inode);
2167 static inline int ext4_has_encryption_key(struct inode *inode) in ext4_has_encryption_key() argument
2175 extern int __ext4_check_dir_entry(const char *, unsigned int, struct inode *,
2188 extern int ext4_find_dest_de(struct inode *dir, struct inode *inode,
2193 int ext4_insert_dentry(struct inode *dir,
2194 struct inode *inode,
2199 static inline void ext4_update_dx_flag(struct inode *inode) in ext4_update_dx_flag() argument
2201 if (!EXT4_HAS_COMPAT_FEATURE(inode->i_sb, in ext4_update_dx_flag()
2203 ext4_clear_inode_flag(inode, EXT4_INODE_INDEX); in ext4_update_dx_flag()
2217 extern int ext4_check_all_de(struct inode *dir, struct buffer_head *bh,
2228 extern struct inode *__ext4_new_inode(handle_t *, struct inode *, umode_t,
2242 extern void ext4_free_inode(handle_t *, struct inode *);
2243 extern struct inode * ext4_orphan_get(struct super_block *, unsigned long);
2260 extern void ext4_discard_preallocations(struct inode *);
2263 extern void ext4_free_blocks(handle_t *handle, struct inode *inode,
2275 int ext4_inode_is_fast_symlink(struct inode *inode);
2276 struct buffer_head *ext4_getblk(handle_t *, struct inode *, ext4_lblk_t, int);
2277 struct buffer_head *ext4_bread(handle_t *, struct inode *, ext4_lblk_t, int);
2278 int ext4_get_block_write(struct inode *inode, sector_t iblock,
2280 int ext4_get_block(struct inode *inode, sector_t iblock,
2282 int ext4_da_get_block_prep(struct inode *inode, sector_t iblock,
2296 extern struct inode *ext4_iget(struct super_block *, unsigned long);
2297 extern struct inode *ext4_iget_normal(struct super_block *, unsigned long);
2298 extern int ext4_write_inode(struct inode *, struct writeback_control *);
2302 extern void ext4_evict_inode(struct inode *);
2303 extern void ext4_clear_inode(struct inode *);
2304 extern int ext4_sync_inode(handle_t *, struct inode *);
2305 extern void ext4_dirty_inode(struct inode *, int);
2306 extern int ext4_change_inode_journal_flag(struct inode *, int);
2307 extern int ext4_get_inode_loc(struct inode *, struct ext4_iloc *);
2308 extern int ext4_inode_attach_jinode(struct inode *inode);
2309 extern int ext4_can_truncate(struct inode *inode);
2310 extern void ext4_truncate(struct inode *);
2311 extern int ext4_punch_hole(struct inode *inode, loff_t offset, loff_t length);
2312 extern int ext4_truncate_restart_trans(handle_t *, struct inode *, int nblocks);
2313 extern void ext4_set_inode_flags(struct inode *);
2315 extern int ext4_alloc_da_blocks(struct inode *inode);
2316 extern void ext4_set_aops(struct inode *inode);
2317 extern int ext4_writepage_trans_blocks(struct inode *);
2318 extern int ext4_chunk_trans_blocks(struct inode *, int nrblocks);
2319 extern int ext4_zero_partial_blocks(handle_t *handle, struct inode *inode,
2323 extern qsize_t *ext4_get_reserved_space(struct inode *inode);
2324 extern void ext4_da_update_reserve_space(struct inode *inode,
2328 extern int ext4_ind_map_blocks(handle_t *handle, struct inode *inode,
2332 extern int ext4_ind_calc_metadata_amount(struct inode *inode, sector_t lblock);
2333 extern int ext4_ind_trans_blocks(struct inode *inode, int nrblocks);
2334 extern void ext4_ind_truncate(handle_t *, struct inode *inode);
2335 extern int ext4_ind_remove_space(handle_t *handle, struct inode *inode,
2343 extern int ext4_ext_migrate(struct inode *);
2344 extern int ext4_ind_migrate(struct inode *inode);
2347 extern int ext4_dirent_csum_verify(struct inode *inode,
2349 extern int ext4_orphan_add(handle_t *, struct inode *);
2350 extern int ext4_orphan_del(handle_t *, struct inode *);
2356 struct inode *dir,
2361 struct inode *dir,
2367 extern int ext4_empty_dir(struct inode *inode);
2391 void __ext4_error_inode(struct inode *, const char *, unsigned int, ext4_fsblk_t,
2416 #define ext4_error_inode(inode, func, line, block, fmt, ...) \ argument
2417 __ext4_error_inode(inode, func, line, block, fmt, ##__VA_ARGS__)
2436 #define ext4_error_inode(inode, func, line, block, fmt, ...) \ argument
2439 __ext4_error_inode(inode, "", 0, block, " "); \
2642 static inline void ext4_update_i_disksize(struct inode *inode, loff_t newsize) in ext4_update_i_disksize() argument
2644 WARN_ON_ONCE(S_ISREG(inode->i_mode) && in ext4_update_i_disksize()
2645 !mutex_is_locked(&inode->i_mutex)); in ext4_update_i_disksize()
2646 down_write(&EXT4_I(inode)->i_data_sem); in ext4_update_i_disksize()
2647 if (newsize > EXT4_I(inode)->i_disksize) in ext4_update_i_disksize()
2648 EXT4_I(inode)->i_disksize = newsize; in ext4_update_i_disksize()
2649 up_write(&EXT4_I(inode)->i_data_sem); in ext4_update_i_disksize()
2653 static inline int ext4_update_inode_size(struct inode *inode, loff_t newsize) in ext4_update_inode_size() argument
2657 if (newsize > inode->i_size) { in ext4_update_inode_size()
2658 i_size_write(inode, newsize); in ext4_update_inode_size()
2661 if (newsize > EXT4_I(inode)->i_disksize) { in ext4_update_inode_size()
2662 ext4_update_i_disksize(inode, newsize); in ext4_update_inode_size()
2668 int ext4_update_disksize_before_punch(struct inode *inode, loff_t offset,
2755 #define ext4_check_indirect_blockref(inode, bh) \ argument
2756 ext4_check_blockref(__func__, __LINE__, inode, \
2758 EXT4_ADDR_PER_BLOCK((inode)->i_sb))
2760 #define ext4_ind_check_inode(inode) \ argument
2761 ext4_check_blockref(__func__, __LINE__, inode, \
2762 EXT4_I(inode)->i_data, \
2778 extern int ext4_get_max_inline_size(struct inode *inode);
2779 extern int ext4_find_inline_data_nolock(struct inode *inode);
2780 extern int ext4_init_inline_data(handle_t *handle, struct inode *inode,
2782 extern int ext4_destroy_inline_data(handle_t *handle, struct inode *inode);
2784 extern int ext4_readpage_inline(struct inode *inode, struct page *page);
2786 struct inode *inode,
2790 extern int ext4_write_inline_data_end(struct inode *inode,
2795 ext4_journalled_write_inline_data(struct inode *inode,
2799 struct inode *inode,
2804 extern int ext4_da_write_inline_data_end(struct inode *inode, loff_t pos,
2808 struct inode *inode);
2810 struct inode *parent,
2811 struct inode *inode);
2816 struct inode *dir, ext4_lblk_t block,
2820 extern struct buffer_head *ext4_find_inline_entry(struct inode *dir,
2825 struct inode *dir,
2829 extern int empty_inline_dir(struct inode *dir, int *has_inline_data);
2830 extern struct buffer_head *ext4_get_first_inline_block(struct inode *inode,
2833 extern int ext4_inline_data_fiemap(struct inode *inode,
2837 struct inode *inode,
2839 extern void ext4_inline_data_truncate(struct inode *inode, int *has_inline);
2841 extern int ext4_convert_inline_data(struct inode *inode);
2843 static inline int ext4_has_inline_data(struct inode *inode) in ext4_has_inline_data() argument
2845 return ext4_test_inode_flag(inode, EXT4_INODE_INLINE_DATA) && in ext4_has_inline_data()
2846 EXT4_I(inode)->i_inline_off; in ext4_has_inline_data()
2853 extern struct ext4_dir_entry_2 *ext4_init_dot_dotdot(struct inode *inode,
2860 struct inode *inode,
2898 struct inode *, __le32 *, unsigned int);
2910 extern int ext4_ext_tree_init(handle_t *handle, struct inode *);
2911 extern int ext4_ext_writepage_trans_blocks(struct inode *, int);
2912 extern int ext4_ext_index_trans_blocks(struct inode *inode, int extents);
2913 extern int ext4_ext_map_blocks(handle_t *handle, struct inode *inode,
2915 extern void ext4_ext_truncate(handle_t *, struct inode *);
2916 extern int ext4_ext_remove_space(struct inode *inode, ext4_lblk_t start,
2922 extern int ext4_convert_unwritten_extents(handle_t *handle, struct inode *inode,
2924 extern int ext4_map_blocks(handle_t *handle, struct inode *inode,
2926 extern int ext4_ext_calc_metadata_amount(struct inode *inode,
2928 extern int ext4_ext_calc_credits_for_single_extent(struct inode *inode,
2931 extern int ext4_can_extents_be_merged(struct inode *inode,
2934 extern int ext4_ext_insert_extent(handle_t *, struct inode *,
2937 extern struct ext4_ext_path *ext4_find_extent(struct inode *, ext4_lblk_t,
2941 extern int ext4_ext_check_inode(struct inode *inode);
2942 extern int ext4_find_delalloc_range(struct inode *inode,
2945 extern int ext4_find_delalloc_cluster(struct inode *inode, ext4_lblk_t lblk);
2947 extern int ext4_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo,
2949 extern int ext4_ext_precache(struct inode *inode);
2950 extern int ext4_collapse_range(struct inode *inode, loff_t offset, loff_t len);
2951 extern int ext4_swap_extents(handle_t *handle, struct inode *inode1,
2952 struct inode *inode2, ext4_lblk_t lblk1,
2957 extern void ext4_double_down_write_data_sem(struct inode *first,
2958 struct inode *second);
2959 extern void ext4_double_up_write_data_sem(struct inode *orig_inode,
2960 struct inode *donor_inode);
2968 extern ext4_io_end_t *ext4_init_io_end(struct inode *inode, gfp_t flags);
3006 static inline void ext4_inode_block_unlocked_dio(struct inode *inode) in ext4_inode_block_unlocked_dio() argument
3008 ext4_set_inode_state(inode, EXT4_STATE_DIOREAD_LOCK); in ext4_inode_block_unlocked_dio()
3011 static inline void ext4_inode_resume_unlocked_dio(struct inode *inode) in ext4_inode_resume_unlocked_dio() argument
3014 ext4_clear_inode_state(inode, EXT4_STATE_DIOREAD_LOCK); in ext4_inode_resume_unlocked_dio()