ext4: enable journal checksum when metadata checksum feature enabled
authorDarrick J. Wong <darrick.wong@oracle.com>
Thu, 30 Oct 2014 14:53:16 +0000 (10:53 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Thu, 30 Oct 2014 14:53:16 +0000 (10:53 -0400)
If metadata checksumming is turned on for the FS, we need to tell the
journal to use checksumming too.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
fs/ext4/super.c

index 1eda6ab0ef9d3a3be99b89242127850c73630ff3..5c11e2153e365040f03a6fe64953e3aa46d4ebf5 100644 (file)
@@ -3526,6 +3526,10 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent)
 #ifdef CONFIG_EXT4_FS_POSIX_ACL
        set_opt(sb, POSIX_ACL);
 #endif
+       /* don't forget to enable journal_csum when metadata_csum is enabled. */
+       if (ext4_has_metadata_csum(sb))
+               set_opt(sb, JOURNAL_CHECKSUM);
+
        if ((def_mount_opts & EXT4_DEFM_JMODE) == EXT4_DEFM_JMODE_DATA)
                set_opt(sb, JOURNAL_DATA);
        else if ((def_mount_opts & EXT4_DEFM_JMODE) == EXT4_DEFM_JMODE_ORDERED)