Lines Matching refs:ei
54 struct ext4_inode_info *ei) in ext4_inode_csum() argument
62 csum = ext4_chksum(sbi, ei->i_csum_seed, (__u8 *)raw, offset); in ext4_inode_csum()
73 if (EXT4_FITS_IN_INODE(raw, ei, i_checksum_hi)) { in ext4_inode_csum()
86 struct ext4_inode_info *ei) in ext4_inode_csum_verify() argument
96 calculated = ext4_inode_csum(inode, raw, ei); in ext4_inode_csum_verify()
98 EXT4_FITS_IN_INODE(raw, ei, i_checksum_hi)) in ext4_inode_csum_verify()
107 struct ext4_inode_info *ei) in ext4_inode_csum_set() argument
116 csum = ext4_inode_csum(inode, raw, ei); in ext4_inode_csum_set()
119 EXT4_FITS_IN_INODE(raw, ei, i_checksum_hi)) in ext4_inode_csum_set()
357 struct ext4_inode_info *ei = EXT4_I(inode); in ext4_da_update_reserve_space() local
359 spin_lock(&ei->i_block_reservation_lock); in ext4_da_update_reserve_space()
361 if (unlikely(used > ei->i_reserved_data_blocks)) { in ext4_da_update_reserve_space()
365 ei->i_reserved_data_blocks); in ext4_da_update_reserve_space()
367 used = ei->i_reserved_data_blocks; in ext4_da_update_reserve_space()
371 ei->i_reserved_data_blocks -= used; in ext4_da_update_reserve_space()
393 if ((ei->i_reserved_data_blocks == 0) && in ext4_da_update_reserve_space()
1573 struct ext4_inode_info *ei = EXT4_I(inode); in ext4_da_reserve_space() local
1585 spin_lock(&ei->i_block_reservation_lock); in ext4_da_reserve_space()
1587 spin_unlock(&ei->i_block_reservation_lock); in ext4_da_reserve_space()
1591 ei->i_reserved_data_blocks++; in ext4_da_reserve_space()
1593 spin_unlock(&ei->i_block_reservation_lock); in ext4_da_reserve_space()
1601 struct ext4_inode_info *ei = EXT4_I(inode); in ext4_da_release_space() local
1609 if (unlikely(to_free > ei->i_reserved_data_blocks)) { in ext4_da_release_space()
1619 ei->i_reserved_data_blocks); in ext4_da_release_space()
1621 to_free = ei->i_reserved_data_blocks; in ext4_da_release_space()
1623 ei->i_reserved_data_blocks -= to_free; in ext4_da_release_space()
1760 struct ext4_inode_info *ei = EXT4_I(inode); in ext4_print_free_blocks() local
1774 ei->i_reserved_data_blocks); in ext4_print_free_blocks()
3666 struct ext4_inode_info *ei = EXT4_I(inode); in ext4_direct_IO_write() local
3677 if (final_size > inode->i_size || final_size > ei->i_disksize) { in ext4_direct_IO_write()
3797 if (end > inode->i_size || end > ei->i_disksize) { in ext4_direct_IO_write()
4200 static void ext4_wait_dax_page(struct ext4_inode_info *ei) in ext4_wait_dax_page() argument
4202 up_write(&ei->i_mmap_sem); in ext4_wait_dax_page()
4204 down_write(&ei->i_mmap_sem); in ext4_wait_dax_page()
4209 struct ext4_inode_info *ei = EXT4_I(inode); in ext4_break_layouts() local
4213 if (WARN_ON_ONCE(!rwsem_is_locked(&ei->i_mmap_sem))) in ext4_break_layouts()
4224 ext4_wait_dax_page(ei)); in ext4_break_layouts()
4380 struct ext4_inode_info *ei = EXT4_I(inode); in ext4_inode_attach_jinode() local
4383 if (ei->jinode || !EXT4_SB(inode->i_sb)->s_journal) in ext4_inode_attach_jinode()
4388 if (!ei->jinode) { in ext4_inode_attach_jinode()
4393 ei->jinode = jinode; in ext4_inode_attach_jinode()
4394 jbd2_journal_init_jbd_inode(ei->jinode, inode); in ext4_inode_attach_jinode()
4433 struct ext4_inode_info *ei = EXT4_I(inode); in ext4_truncate() local
4506 up_write(&ei->i_data_sem); in ext4_truncate()
4723 struct ext4_inode_info *ei) in ext4_inode_blocks() argument
4726 struct inode *inode = &(ei->vfs_inode); in ext4_inode_blocks()
4746 struct ext4_inode_info *ei) in ext4_iget_extra_inode() argument
4749 EXT4_GOOD_OLD_INODE_SIZE + ei->i_extra_isize; in ext4_iget_extra_inode()
4751 if (EXT4_GOOD_OLD_INODE_SIZE + ei->i_extra_isize + sizeof(__le32) <= in ext4_iget_extra_inode()
4793 struct ext4_inode_info *ei; in ext4_iget() local
4809 ei = EXT4_I(inode); in ext4_iget()
4824 ei->i_extra_isize = le16_to_cpu(raw_inode->i_extra_isize); in ext4_iget()
4825 if (EXT4_GOOD_OLD_INODE_SIZE + ei->i_extra_isize > in ext4_iget()
4827 (ei->i_extra_isize & 3)) { in ext4_iget()
4830 ei->i_extra_isize, in ext4_iget()
4836 ei->i_extra_isize = 0; in ext4_iget()
4846 ei->i_csum_seed = ext4_chksum(sbi, csum, (__u8 *)&gen, in ext4_iget()
4850 if (!ext4_inode_csum_verify(inode, raw_inode, ei)) { in ext4_iget()
4861 EXT4_FITS_IN_INODE(raw_inode, ei, i_projid)) in ext4_iget()
4872 ei->i_projid = make_kprojid(&init_user_ns, i_projid); in ext4_iget()
4875 ext4_clear_state_flags(ei); /* Only relevant on 32-bit archs */ in ext4_iget()
4876 ei->i_inline_off = 0; in ext4_iget()
4877 ei->i_dir_start_lookup = 0; in ext4_iget()
4878 ei->i_dtime = le32_to_cpu(raw_inode->i_dtime); in ext4_iget()
4899 ei->i_flags = le32_to_cpu(raw_inode->i_flags); in ext4_iget()
4901 inode->i_blocks = ext4_inode_blocks(raw_inode, ei); in ext4_iget()
4902 ei->i_file_acl = le32_to_cpu(raw_inode->i_file_acl_lo); in ext4_iget()
4904 ei->i_file_acl |= in ext4_iget()
4912 ei->i_disksize = inode->i_size; in ext4_iget()
4914 ei->i_reserved_quota = 0; in ext4_iget()
4917 ei->i_block_group = iloc.block_group; in ext4_iget()
4918 ei->i_last_alloc_group = ~0; in ext4_iget()
4924 ei->i_data[block] = raw_inode->i_block[block]; in ext4_iget()
4925 INIT_LIST_HEAD(&ei->i_orphan); in ext4_iget()
4948 ei->i_sync_tid = tid; in ext4_iget()
4949 ei->i_datasync_tid = tid; in ext4_iget()
4953 if (ei->i_extra_isize == 0) { in ext4_iget()
4956 ei->i_extra_isize = sizeof(struct ext4_inode) - in ext4_iget()
4959 ret = ext4_iget_extra_inode(inode, raw_inode, ei); in ext4_iget()
4968 EXT4_EINODE_GET_XTIME(i_crtime, ei, raw_inode); in ext4_iget()
4974 if (EXT4_FITS_IN_INODE(raw_inode, ei, i_version_hi)) in ext4_iget()
4982 if (ei->i_file_acl && in ext4_iget()
4983 !ext4_data_block_valid(EXT4_SB(sb), ei->i_file_acl, 1)) { in ext4_iget()
4985 ei->i_file_acl); in ext4_iget()
5021 inode->i_link = (char *)ei->i_data; in ext4_iget()
5023 nd_terminate_link(ei->i_data, inode->i_size, in ext4_iget()
5024 sizeof(ei->i_data) - 1); in ext4_iget()
5066 struct ext4_inode_info *ei) in ext4_inode_blocks_set() argument
5068 struct inode *inode = &(ei->vfs_inode); in ext4_inode_blocks_set()
5122 struct ext4_inode_info *ei = EXT4_I(inode); in other_inode_match() local
5127 spin_lock(&ei->i_raw_lock); in other_inode_match()
5131 ext4_inode_csum_set(inode, oi->raw_inode, ei); in other_inode_match()
5132 spin_unlock(&ei->i_raw_lock); in other_inode_match()
5179 struct ext4_inode_info *ei = EXT4_I(inode); in ext4_do_update_inode() local
5188 spin_lock(&ei->i_raw_lock); in ext4_do_update_inode()
5198 i_projid = from_kprojid(&init_user_ns, ei->i_projid); in ext4_do_update_inode()
5206 if (ei->i_dtime && list_empty(&ei->i_orphan)) { in ext4_do_update_inode()
5226 EXT4_EINODE_SET_XTIME(i_crtime, ei, raw_inode); in ext4_do_update_inode()
5228 err = ext4_inode_blocks_set(handle, raw_inode, ei); in ext4_do_update_inode()
5230 spin_unlock(&ei->i_raw_lock); in ext4_do_update_inode()
5233 raw_inode->i_dtime = cpu_to_le32(ei->i_dtime); in ext4_do_update_inode()
5234 raw_inode->i_flags = cpu_to_le32(ei->i_flags & 0xFFFFFFFF); in ext4_do_update_inode()
5237 cpu_to_le16(ei->i_file_acl >> 32); in ext4_do_update_inode()
5238 raw_inode->i_file_acl_lo = cpu_to_le32(ei->i_file_acl); in ext4_do_update_inode()
5239 if (ei->i_disksize != ext4_isize(inode->i_sb, raw_inode)) { in ext4_do_update_inode()
5240 ext4_isize_set(raw_inode, ei->i_disksize); in ext4_do_update_inode()
5243 if (ei->i_disksize > 0x7fffffffULL) { in ext4_do_update_inode()
5263 raw_inode->i_block[block] = ei->i_data[block]; in ext4_do_update_inode()
5270 if (ei->i_extra_isize) { in ext4_do_update_inode()
5271 if (EXT4_FITS_IN_INODE(raw_inode, ei, i_version_hi)) in ext4_do_update_inode()
5275 cpu_to_le16(ei->i_extra_isize); in ext4_do_update_inode()
5283 EXT4_FITS_IN_INODE(raw_inode, ei, i_projid)) in ext4_do_update_inode()
5286 ext4_inode_csum_set(inode, raw_inode, ei); in ext4_do_update_inode()
5287 spin_unlock(&ei->i_raw_lock); in ext4_do_update_inode()
5642 struct ext4_inode_info *ei = EXT4_I(inode); in ext4_getattr() local
5645 if (EXT4_FITS_IN_INODE(raw_inode, ei, i_crtime)) { in ext4_getattr()
5647 stat->btime.tv_sec = ei->i_crtime.tv_sec; in ext4_getattr()
5648 stat->btime.tv_nsec = ei->i_crtime.tv_nsec; in ext4_getattr()
5651 flags = ei->i_flags & EXT4_FL_USER_VISIBLE; in ext4_getattr()