ext4: When resizing set the EXT4_BG_INODE_ZEROED flag for new block groups
authorSolofo.Ramangalahy@bull.net <>
Thu, 27 Nov 2008 04:44:10 +0000 (23:44 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Thu, 27 Nov 2008 04:44:10 +0000 (23:44 -0500)
The inode table has been zeroed in setup_new_group_blocks().  Mark it as
such in ext4_group_add().  Since we are currently clearing inode table
for the new block group, we should set the EXT4_BG_INODE_ZEROED flag.
If at some point in the future we don't immediately zero out the inode
table as part of the resize operation, then obviously we shouldn't do
this.

Signed-off-by: Solofo.Ramangalahy@bull.net
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
fs/ext4/resize.c

index b6ec1843a015d2f1d243d74a0818a5d31f06d536..d448eb1d9baed7bae0b1040d83b1d81c4a4a54c7 100644 (file)
@@ -864,6 +864,7 @@ int ext4_group_add(struct super_block *sb, struct ext4_new_group_data *input)
        ext4_inode_table_set(sb, gdp, input->inode_table); /* LV FIXME */
        gdp->bg_free_blocks_count = cpu_to_le16(input->free_blocks_count);
        gdp->bg_free_inodes_count = cpu_to_le16(EXT4_INODES_PER_GROUP(sb));
+       gdp->bg_flags |= cpu_to_le16(EXT4_BG_INODE_ZEROED);
        gdp->bg_checksum = ext4_group_desc_csum(sbi, input->group, gdp);
 
        /*