Lines Matching refs:aux_info
43 struct fs_aux_info aux_info; variable
95 aux_info.first_data_block = (info.block_size > 1024) ? 0 : 1; in ext4_create_fs_aux_info()
96 aux_info.len_blocks = info.len / info.block_size; in ext4_create_fs_aux_info()
97 aux_info.inode_table_blocks = in ext4_create_fs_aux_info()
99 aux_info.groups = in ext4_create_fs_aux_info()
100 DIV_ROUND_UP(aux_info.len_blocks - aux_info.first_data_block, info.blocks_per_group); in ext4_create_fs_aux_info()
101 aux_info.blocks_per_ind = info.block_size / sizeof(u32); in ext4_create_fs_aux_info()
102 aux_info.blocks_per_dind = aux_info.blocks_per_ind * aux_info.blocks_per_ind; in ext4_create_fs_aux_info()
103 aux_info.blocks_per_tind = aux_info.blocks_per_dind * aux_info.blocks_per_dind; in ext4_create_fs_aux_info()
105 aux_info.bg_desc_blocks = in ext4_create_fs_aux_info()
106 DIV_ROUND_UP(aux_info.groups * (size_t)info.bg_desc_size, info.block_size); in ext4_create_fs_aux_info()
108 aux_info.default_i_flags = EXT4_NOATIME_FL; in ext4_create_fs_aux_info()
110 u32 last_group_size = aux_info.len_blocks == info.blocks_per_group in ext4_create_fs_aux_info()
111 ? aux_info.len_blocks in ext4_create_fs_aux_info()
112 : aux_info.len_blocks % info.blocks_per_group; in ext4_create_fs_aux_info()
113 u32 last_header_size = 2 + aux_info.inode_table_blocks; in ext4_create_fs_aux_info()
114 if (ext4_bg_has_super_block((int)aux_info.groups - 1)) in ext4_create_fs_aux_info()
115 last_header_size += 1 + aux_info.bg_desc_blocks + info.bg_desc_reserve_blocks; in ext4_create_fs_aux_info()
116 if (aux_info.groups <= 1 && last_group_size < last_header_size) { in ext4_create_fs_aux_info()
120 aux_info.groups--; in ext4_create_fs_aux_info()
121 aux_info.len_blocks -= last_group_size; in ext4_create_fs_aux_info()
127 aux_info.sb_zero = (struct ext4_super_block*)calloc(1, info.block_size); in ext4_create_fs_aux_info()
128 if (!aux_info.sb_zero) critical_error_errno("calloc"); in ext4_create_fs_aux_info()
135 aux_info.sb_block = (struct ext4_super_block*)calloc(1, info.block_size); in ext4_create_fs_aux_info()
136 if (!aux_info.sb_block) critical_error_errno("calloc"); in ext4_create_fs_aux_info()
139 aux_info.sb = (struct ext4_super_block*)((char*)aux_info.sb_block + 1024); in ext4_create_fs_aux_info()
141 aux_info.sb = aux_info.sb_block; in ext4_create_fs_aux_info()
144 aux_info.backup_sb = in ext4_create_fs_aux_info()
145 (struct ext4_super_block**)calloc(aux_info.groups, sizeof(struct ext4_super_block*)); in ext4_create_fs_aux_info()
147 if (!aux_info.sb) critical_error_errno("calloc"); in ext4_create_fs_aux_info()
149 aux_info.bg_desc = in ext4_create_fs_aux_info()
150 (struct ext2_group_desc*)calloc(aux_info.groups, sizeof(struct ext2_group_desc)); in ext4_create_fs_aux_info()
151 if (!aux_info.bg_desc) critical_error_errno("calloc"); in ext4_create_fs_aux_info()
152 aux_info.xattrs = NULL; in ext4_create_fs_aux_info()
158 for (i = 0; i < aux_info.groups; i++) { in ext4_free_fs_aux_info()
159 if (aux_info.backup_sb[i]) free(aux_info.backup_sb[i]); in ext4_free_fs_aux_info()
161 free(aux_info.sb_block); in ext4_free_fs_aux_info()
162 free(aux_info.sb_zero); in ext4_free_fs_aux_info()
163 free(aux_info.bg_desc); in ext4_free_fs_aux_info()
175 memcpy(aux_info.sb, sb, sizeof(*sb)); in ext4_parse_sb_info()
177 if (aux_info.first_data_block != sb->s_first_data_block) in ext4_parse_sb_info()
238 size_t size = info.block_size * (size_t)aux_info.bg_desc_blocks; in read_block_group_descriptors()
255 for (size_t i = 0; i < aux_info.groups; i++) { in read_block_group_descriptors()
256 aux_info.bg_desc[i].bg_block_bitmap = in read_block_group_descriptors()
258 aux_info.bg_desc[i].bg_inode_bitmap = in read_block_group_descriptors()
260 aux_info.bg_desc[i].bg_inode_table = in read_block_group_descriptors()
262 aux_info.bg_desc[i].bg_free_blocks_count = in read_block_group_descriptors()
265 aux_info.bg_desc[i].bg_free_inodes_count = in read_block_group_descriptors()
268 aux_info.bg_desc[i].bg_used_dirs_count = in read_block_group_descriptors()
270 aux_info.bg_desc[i].bg_flags = gdp->bg_flags; in read_block_group_descriptors()
287 ret = lseek(fd, info.block_size * (aux_info.first_data_block + 1), SEEK_SET); in read_ext()
300 printf(" Blocks: %" PRIext4u64 "\n", aux_info.len_blocks); in read_ext()
301 printf(" Block groups: %d\n", aux_info.groups); in read_ext()
305 aux_info.sb->s_inodes_count - aux_info.sb->s_free_inodes_count, in read_ext()
306 aux_info.sb->s_inodes_count, in read_ext()
307 aux_info.sb->s_blocks_count_lo - aux_info.sb->s_free_blocks_count_lo, in read_ext()
308 aux_info.sb->s_blocks_count_lo); in read_ext()