xfs: fix sb_meta_uuid usage
authorDave Chinner <dchinner@redhat.com>
Wed, 19 Aug 2015 00:31:18 +0000 (10:31 +1000)
committerDave Chinner <david@fromorbit.com>
Wed, 19 Aug 2015 00:31:18 +0000 (10:31 +1000)
After changing the UUID on a v5 filesystem, xfstests fails
immediately on a debug kernel with:

XFS: Assertion failed: uuid_equal(&ip->i_d.di_uuid, &mp->m_sb.sb_uuid), file: fs/xfs/xfs_inode.c, line: 799

This needs to check against the sb_meta_uuid, not the user visible
UUID that was changed.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
fs/xfs/xfs_inode.c

index 3da9f4da4f3d2e6b67ffd1bd752b4b0993af9fda..3e343c7f347aa00fe02a2eb81e76f1086ea0e9ab 100644 (file)
@@ -787,7 +787,7 @@ xfs_ialloc(
 
        if (ip->i_d.di_version == 3) {
                ASSERT(ip->i_d.di_ino == ino);
-               ASSERT(uuid_equal(&ip->i_d.di_uuid, &mp->m_sb.sb_uuid));
+               ASSERT(uuid_equal(&ip->i_d.di_uuid, &mp->m_sb.sb_meta_uuid));
                ip->i_d.di_crc = 0;
                ip->i_d.di_changecount = 1;
                ip->i_d.di_lsn = 0;