]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
xfs_repair: fix agf limit error messages
authorEric Sandeen <sandeen@redhat.com>
Tue, 10 May 2016 07:16:06 +0000 (17:16 +1000)
committerDave Chinner <david@fromorbit.com>
Tue, 10 May 2016 07:16:06 +0000 (17:16 +1000)
Today we see errors like:

"fllast 118 in agf 94 too large (max = 118)"

which makes no sense.

If we are erroring on X >= Y, Y is clearly not the maximum allowable
value.

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

index bd11ac2bd72bbfafb7a73f27e49b46f20b439252..b95cedd8f9fb9d519c493da5199c9d00810ff871 100644 (file)
@@ -94,7 +94,7 @@ verify_set_agf(xfs_mount_t *mp, xfs_agf_t *agf, xfs_agnumber_t i)
        if (be32_to_cpu(agf->agf_flfirst) >= XFS_AGFL_SIZE(mp))  {
                do_warn(_("flfirst %d in agf %d too large (max = %zu)\n"),
                        be32_to_cpu(agf->agf_flfirst),
-                       i, XFS_AGFL_SIZE(mp));
+                       i, XFS_AGFL_SIZE(mp) - 1);
                if (!no_modify)
                        agf->agf_flfirst = cpu_to_be32(0);
        }
@@ -102,7 +102,7 @@ verify_set_agf(xfs_mount_t *mp, xfs_agf_t *agf, xfs_agnumber_t i)
        if (be32_to_cpu(agf->agf_fllast) >= XFS_AGFL_SIZE(mp))  {
                do_warn(_("fllast %d in agf %d too large (max = %zu)\n"),
                        be32_to_cpu(agf->agf_fllast),
-                       i, XFS_AGFL_SIZE(mp));
+                       i, XFS_AGFL_SIZE(mp) - 1);
                if (!no_modify)
                        agf->agf_fllast = cpu_to_be32(0);
        }