ext4_inode_info
Regular
4.4
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
unsigned int i_reserved_meta_blocks;
unsigned int i_allocated_meta_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
atomic_t i_ioend_count;
atomic_t i_unwritten;
struct work_struct i_rsv_conversion_work;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
struct ext4_crypt_info *i_crypt_info;
};
4.8
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
unsigned int i_reserved_meta_blocks;
unsigned int i_allocated_meta_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
4.10
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
unsigned int i_reserved_meta_blocks;
unsigned int i_allocated_meta_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
4.13
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
4.15
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
4.18
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
5.0
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
5.3
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
5.4
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
5.8
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
atomic_t i_prealloc_active;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
5.11
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
struct list_head i_fc_list;
ext4_lblk_t i_fc_lblk_start;
ext4_lblk_t i_fc_lblk_len;
atomic_t i_fc_updates;
wait_queue_head_t i_fc_wait;
struct mutex i_fc_lock;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
atomic_t i_prealloc_active;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
5.13
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
struct list_head i_fc_list;
ext4_lblk_t i_fc_lblk_start;
ext4_lblk_t i_fc_lblk_len;
atomic_t i_fc_updates;
wait_queue_head_t i_fc_wait;
struct mutex i_fc_lock;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
atomic_t i_prealloc_active;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
5.15
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
unsigned int i_orphan_idx;
struct list_head i_fc_list;
ext4_lblk_t i_fc_lblk_start;
ext4_lblk_t i_fc_lblk_len;
atomic_t i_fc_updates;
wait_queue_head_t i_fc_wait;
struct mutex i_fc_lock;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
atomic_t i_prealloc_active;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
5.19
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
unsigned int i_orphan_idx;
struct list_head i_fc_dilist;
struct list_head i_fc_list;
ext4_lblk_t i_fc_lblk_start;
ext4_lblk_t i_fc_lblk_len;
atomic_t i_fc_updates;
wait_queue_head_t i_fc_wait;
struct mutex i_fc_lock;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
atomic_t i_prealloc_active;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
6.2
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
unsigned int i_orphan_idx;
struct list_head i_fc_dilist;
struct list_head i_fc_list;
ext4_lblk_t i_fc_lblk_start;
ext4_lblk_t i_fc_lblk_len;
atomic_t i_fc_updates;
wait_queue_head_t i_fc_wait;
struct mutex i_fc_lock;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
atomic_t i_prealloc_active;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
6.5
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
unsigned int i_orphan_idx;
struct list_head i_fc_dilist;
struct list_head i_fc_list;
ext4_lblk_t i_fc_lblk_start;
ext4_lblk_t i_fc_lblk_len;
atomic_t i_fc_updates;
wait_queue_head_t i_fc_wait;
struct mutex i_fc_lock;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
atomic_t i_prealloc_active;
struct rb_root i_prealloc_node;
rwlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
6.8
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
unsigned int i_orphan_idx;
struct list_head i_fc_dilist;
struct list_head i_fc_list;
ext4_lblk_t i_fc_lblk_start;
ext4_lblk_t i_fc_lblk_len;
atomic_t i_fc_updates;
wait_queue_head_t i_fc_wait;
struct mutex i_fc_lock;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
atomic_t i_prealloc_active;
struct rb_root i_prealloc_node;
rwlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
arm64
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
armhf
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_state_flags;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
ppc64el
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
riscv64
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
aws
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
azure
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
gcp
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
lowlatency
: ✅struct ext4_inode_info {
__le32 i_data[15];
__u32 i_dtime;
ext4_fsblk_t i_file_acl;
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
long unsigned int i_flags;
struct rw_semaphore xattr_sem;
struct list_head i_orphan;
loff_t i_disksize;
struct rw_semaphore i_data_sem;
struct rw_semaphore i_mmap_sem;
struct inode vfs_inode;
struct jbd2_inode *jinode;
spinlock_t i_raw_lock;
struct timespec64 i_crtime;
struct list_head i_prealloc_list;
spinlock_t i_prealloc_lock;
struct ext4_es_tree i_es_tree;
rwlock_t i_es_lock;
struct list_head i_es_list;
unsigned int i_es_all_nr;
unsigned int i_es_shk_nr;
ext4_lblk_t i_es_shrink_lblk;
ext4_group_t i_last_alloc_group;
unsigned int i_reserved_data_blocks;
ext4_lblk_t i_da_metadata_calc_last_lblock;
int i_da_metadata_calc_len;
struct ext4_pending_tree i_pending_tree;
__u16 i_extra_isize;
u16 i_inline_off;
u16 i_inline_size;
qsize_t i_reserved_quota;
spinlock_t i_completed_io_lock;
struct list_head i_rsv_conversion_list;
struct work_struct i_rsv_conversion_work;
atomic_t i_unwritten;
spinlock_t i_block_reservation_lock;
tid_t i_sync_tid;
tid_t i_datasync_tid;
struct dquot * i_dquot[3];
__u32 i_csum_seed;
kprojid_t i_projid;
};
Regular
4.4
and 4.8
⚠️struct rw_semaphore i_mmap_sem
kprojid_t i_projid
atomic_t i_ioend_count
struct ext4_crypt_info *i_crypt_info
4.8
and 4.10
✅
4.10
and 4.13
⚠️unsigned int i_reserved_meta_blocks
unsigned int i_allocated_meta_blocks
4.13
and 4.15
✅
4.15
and 4.18
✅
4.18
and 5.0
⚠️struct ext4_pending_tree i_pending_tree
struct timespec i_crtime
➡️ struct timespec64 i_crtime
5.0
and 5.3
✅
5.3
and 5.4
✅
5.4
and 5.8
⚠️atomic_t i_prealloc_active
ext4_lblk_t i_da_metadata_calc_last_lblock
int i_da_metadata_calc_len
5.8
and 5.11
⚠️struct list_head i_fc_list
ext4_lblk_t i_fc_lblk_start
ext4_lblk_t i_fc_lblk_len
atomic_t i_fc_updates
wait_queue_head_t i_fc_wait
struct mutex i_fc_lock
5.11
and 5.13
✅
5.13
and 5.15
⚠️unsigned int i_orphan_idx
struct rw_semaphore i_mmap_sem
5.15
and 5.19
⚠️struct list_head i_fc_dilist
5.19
and 6.2
✅
6.2
and 6.5
⚠️struct rb_root i_prealloc_node
struct list_head i_prealloc_list
spinlock_t i_prealloc_lock
➡️ rwlock_t i_prealloc_lock
6.5
and 6.8
✅
amd64
and arm64
✅
amd64
and armhf
⚠️long unsigned int i_state_flags
amd64
and ppc64el
✅
amd64
and riscv64
✅
generic
and aws
✅
generic
and azure
✅
generic
and gcp
✅
generic
and lowlatency
✅