]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
xfs_repair: don't guess about failure reason in phase6
authorEric Sandeen <sandeen@redhat.com>
Thu, 10 Mar 2022 14:11:12 +0000 (09:11 -0500)
committerEric Sandeen <sandeen@sandeen.net>
Thu, 10 Mar 2022 14:11:12 +0000 (09:11 -0500)
There are many error messages in phase 6 which say
"filesystem may be out of space," when in reality the failure could
have been corruption or some other issue.  Rather than guessing, and
emitting a confusing and possibly-wrong message, use the existing
res_failed() for any xfs_trans_alloc failures, and simply print the
error number in the other cases.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
repair/phase6.c

index 9e60c87ba240858bce912f273b11cbd017042d6f..8fcd4d36f09fdb59b9623cdfc82ee53e05dc18e0 100644 (file)
@@ -1067,9 +1067,7 @@ mv_orphanage(
                        err = -libxfs_trans_alloc(mp, &M_RES(mp)->tr_rename,
                                                  nres, 0, 0, &tp);
                        if (err)
-                               do_error(
-       _("space reservation failed (%d), filesystem may be out of space\n"),
-                                       err);
+                               res_failed(err);
 
                        libxfs_trans_ijoin(tp, orphanage_ip, 0);
                        libxfs_trans_ijoin(tp, ino_p, 0);
@@ -1078,8 +1076,7 @@ mv_orphanage(
                                                ino, nres);
                        if (err)
                                do_error(
-       _("name create failed in %s (%d), filesystem may be out of space\n"),
-                                       ORPHANAGE, err);
+       _("name create failed in %s (%d)\n"), ORPHANAGE, err);
 
                        if (irec)
                                add_inode_ref(irec, ino_offset);
@@ -1091,8 +1088,7 @@ mv_orphanage(
                                        orphanage_ino, nres);
                        if (err)
                                do_error(
-       _("creation of .. entry failed (%d), filesystem may be out of space\n"),
-                                       err);
+       _("creation of .. entry failed (%d)\n"), err);
 
                        inc_nlink(VFS_I(ino_p));
                        libxfs_trans_log_inode(tp, ino_p, XFS_ILOG_CORE);
@@ -1104,9 +1100,7 @@ mv_orphanage(
                        err = -libxfs_trans_alloc(mp, &M_RES(mp)->tr_rename,
                                                  nres, 0, 0, &tp);
                        if (err)
-                               do_error(
-       _("space reservation failed (%d), filesystem may be out of space\n"),
-                                       err);
+                               res_failed(err);
 
                        libxfs_trans_ijoin(tp, orphanage_ip, 0);
                        libxfs_trans_ijoin(tp, ino_p, 0);
@@ -1116,8 +1110,7 @@ mv_orphanage(
                                                ino, nres);
                        if (err)
                                do_error(
-       _("name create failed in %s (%d), filesystem may be out of space\n"),
-                                       ORPHANAGE, err);
+       _("name create failed in %s (%d)\n"), ORPHANAGE, err);
 
                        if (irec)
                                add_inode_ref(irec, ino_offset);
@@ -1135,8 +1128,7 @@ mv_orphanage(
                                                nres);
                                if (err)
                                        do_error(
-       _("name replace op failed (%d), filesystem may be out of space\n"),
-                                               err);
+       _("name replace op failed (%d)\n"), err);
                        }
 
                        err = -libxfs_trans_commit(tp);
@@ -1156,9 +1148,7 @@ mv_orphanage(
                err = -libxfs_trans_alloc(mp, &M_RES(mp)->tr_remove,
                                          nres, 0, 0, &tp);
                if (err)
-                       do_error(
-       _("space reservation failed (%d), filesystem may be out of space\n"),
-                               err);
+                       res_failed(err);
 
                libxfs_trans_ijoin(tp, orphanage_ip, 0);
                libxfs_trans_ijoin(tp, ino_p, 0);
@@ -1167,8 +1157,7 @@ mv_orphanage(
                                                nres);
                if (err)
                        do_error(
-       _("name create failed in %s (%d), filesystem may be out of space\n"),
-                               ORPHANAGE, err);
+       _("name create failed in %s (%d)\n"), ORPHANAGE, err);
                ASSERT(err == 0);
 
                set_nlink(VFS_I(ino_p), 1);
@@ -1351,8 +1340,7 @@ longform_dir2_rebuild(
                                                nres);
                if (error) {
                        do_warn(
-_("name create failed in ino %" PRIu64 " (%d), filesystem may be out of space\n"),
-                               ino, error);
+_("name create failed in ino %" PRIu64 " (%d)\n"), ino, error);
                        goto out_bmap_cancel;
                }