Aneesh Kumar K.V wrote:
+ if (block_group == sbi->s_gdb_count - 1) {
+ /*
+ * Even though mke2fs always initialize first and last group
+ * if some other tool enabled the EXT4_BG_BLOCK_UNINIT we need
+ * to make sure we calculate the right free blocks
+ */
+ free_blocks = ext4_blocks_count(sbi->s_es) -
+ le32_to_cpu(sbi->s_es->s_first_data_block) -
+ (EXT4_BLOCKS_PER_GROUP(sb) * sbi->s_groups_count) -
+ bit_max;
+ } else {
+ free_blocks = EXT4_BLOCKS_PER_GROUP(sb) - bit_max;
+ }
Hi Aneesh,
I found a bug in the latest uninitialized-block-groups patch.
(block_group == sbi->s_gdb_count - 1) must be replaced by
(block_group == sbi->s_groups_count - 1) in the ext4_init_block_bitmap()
function.
(Seen while testing the mballoc feature with uninit_groups option
enabled. fsck reported an error on this group.)
Valérie
-
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html