]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
xfs: keep sb_bad_features2 the same a sb_features2
authorDave Chinner <dchinner@redhat.com>
Mon, 19 May 2014 21:41:43 +0000 (07:41 +1000)
committerDave Chinner <david@fromorbit.com>
Mon, 19 May 2014 21:41:43 +0000 (07:41 +1000)
Whenever we update sb_features2, we need to update sb_bad_features2
so that they remain identical on disk. This prevents future mounts
or userspace utilities from getting confused over which features the
filesystem supports.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
fs/xfs/xfs_sb.h

index 57f6ba13d19f72796f6579b69c5c1aaf20222bda..a6a76f41aad2e3da33d4f20f951aaacafd72f41c 100644 (file)
@@ -468,11 +468,13 @@ static inline void xfs_sb_version_addattr2(struct xfs_sb *sbp)
 {
        sbp->sb_versionnum |= XFS_SB_VERSION_MOREBITSBIT;
        sbp->sb_features2 |= XFS_SB_VERSION2_ATTR2BIT;
+       sbp->sb_bad_features2 |= XFS_SB_VERSION2_ATTR2BIT;
 }
 
 static inline void xfs_sb_version_removeattr2(struct xfs_sb *sbp)
 {
        sbp->sb_features2 &= ~XFS_SB_VERSION2_ATTR2BIT;
+       sbp->sb_bad_features2 &= ~XFS_SB_VERSION2_ATTR2BIT;
        if (!sbp->sb_features2)
                sbp->sb_versionnum &= ~XFS_SB_VERSION_MOREBITSBIT;
 }