Whamcloud - gitweb
libext2fs: update dirty flags if the uninit flags are cleared
authorTheodore Ts'o <tytso@mit.edu>
Mon, 26 Mar 2012 02:24:10 +0000 (22:24 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Mon, 26 Mar 2012 17:36:02 +0000 (10:36 -0700)
Update the block group descriptor checksum and mark the superblock and
allocation bitmaps as dirty in check_inode_uninit() and
check_block_uninit().

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
lib/ext2fs/alloc.c

index 752c4da..775dfcc 100644 (file)
@@ -73,6 +73,8 @@ static void check_block_uninit(ext2_filsys fs, ext2fs_block_bitmap map,
        }
        ext2fs_bg_flags_clear(fs, group, EXT2_BG_BLOCK_UNINIT);
        ext2fs_group_desc_csum_set(fs, group);
+       ext2fs_mark_super_dirty(fs);
+       ext2fs_mark_bb_dirty(fs);
 }
 
 /*
@@ -93,6 +95,9 @@ static void check_inode_uninit(ext2_filsys fs, ext2fs_inode_bitmap map,
                ext2fs_fast_unmark_inode_bitmap2(map, ino);
 
        ext2fs_bg_flags_clear(fs, group, EXT2_BG_INODE_UNINIT);
+       ext2fs_group_desc_csum_set(fs, group);
+       ext2fs_mark_ib_dirty(fs);
+       ext2fs_mark_super_dirty(fs);
        check_block_uninit(fs, fs->block_map, group);
 }