ext2: Set superblock revision when enabling xattr feature
authorJan Kara <jack@suse.cz>
Tue, 22 Jan 2019 11:35:36 +0000 (12:35 +0100)
committerJan Kara <jack@suse.cz>
Tue, 22 Jan 2019 11:35:36 +0000 (12:35 +0100)
When setting the first xattr, we automatically enable
EXT2_FEATURE_COMPAT_EXT_ATTR. However we forget to call
ext2_update_dynamic_rev() so in theory if the filesystem was created as
ancient one without features support, this could be missed. The
consequences are minor anyway - since the feature is compat one, only
old e2fsck which does not understand xattrs could do something bad.

Reported-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Jan Kara <jack@suse.cz>
fs/ext2/xattr.c

index 4f30876..1e33e0a 100644 (file)
@@ -342,6 +342,7 @@ static void ext2_xattr_update_super_block(struct super_block *sb)
                return;
 
        spin_lock(&EXT2_SB(sb)->s_lock);
+       ext2_update_dynamic_rev(sb);
        EXT2_SET_COMPAT_FEATURE(sb, EXT2_FEATURE_COMPAT_EXT_ATTR);
        spin_unlock(&EXT2_SB(sb)->s_lock);
        mark_buffer_dirty(EXT2_SB(sb)->s_sbh);