From: Eric Sandeen Date: Thu, 10 Mar 2022 14:11:12 +0000 (-0500) Subject: xfs_repair: don't guess about failure reason in phase6 X-Git-Tag: v5.15.0-rc1~2 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=12518245fe6599ed32127bfc49fb1f0f0d3c4c66;p=thirdparty%2Fxfsprogs-dev.git xfs_repair: don't guess about failure reason in phase6 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 Reviewed-by: Darrick J. Wong Signed-off-by: Eric Sandeen --- diff --git a/repair/phase6.c b/repair/phase6.c index 9e60c87ba..8fcd4d36f 100644 --- a/repair/phase6.c +++ b/repair/phase6.c @@ -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; }