Whamcloud - gitweb
tune2fs: store checksum algorithm type in superblock
authorDarrick J. Wong <djwong@us.ibm.com>
Fri, 3 Aug 2012 00:47:44 +0000 (20:47 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Fri, 3 Aug 2012 00:47:44 +0000 (20:47 -0400)
Actually records the checksum algorithm type in the superblock when
enabling checksumming.

Signed-off-by: Darrick J. Wong <djwong@us.ibm.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
misc/tune2fs.c

index 8bb3bc3..bc3f832 100644 (file)
@@ -702,6 +702,12 @@ static void rewrite_metadata_checksums(ext2_filsys fs)
        ext2fs_mark_bb_dirty(fs);
        fs->flags &= ~EXT2_FLAG_SUPER_ONLY;
        fs->flags &= ~EXT2_FLAG_IGNORE_CSUM_ERRORS;
+       if (EXT2_HAS_RO_COMPAT_FEATURE(fs->super,
+                                      EXT4_FEATURE_RO_COMPAT_METADATA_CSUM))
+               fs->super->s_checksum_type = EXT2_CRC32C_CHKSUM;
+       else
+               fs->super->s_checksum_type = 0;
+       ext2fs_mark_super_dirty(fs);
 }
 
 /*