xfs: convert open coded corruption check to use XFS_IS_CORRUPT
Convert the last of the open coded corruption check and report idioms to use the XFS_IS_CORRUPT macro. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
@@ -731,8 +731,7 @@ xfs_bmap_extents_to_btree(
|
||||
ip->i_d.di_nblocks++;
|
||||
xfs_trans_mod_dquot_byino(tp, ip, XFS_TRANS_DQ_BCOUNT, 1L);
|
||||
abp = xfs_btree_get_bufl(mp, tp, args.fsbno);
|
||||
if (!abp) {
|
||||
XFS_ERROR_REPORT(__func__, XFS_ERRLEVEL_LOW, mp);
|
||||
if (XFS_IS_CORRUPT(mp, !abp)) {
|
||||
error = -EFSCORRUPTED;
|
||||
goto out_unreserve_dquot;
|
||||
}
|
||||
@@ -1090,8 +1089,7 @@ xfs_bmap_add_attrfork(
|
||||
goto trans_cancel;
|
||||
if (XFS_IFORK_Q(ip))
|
||||
goto trans_cancel;
|
||||
if (ip->i_d.di_anextents != 0) {
|
||||
XFS_ERROR_REPORT(__func__, XFS_ERRLEVEL_LOW, mp);
|
||||
if (XFS_IS_CORRUPT(mp, ip->i_d.di_anextents != 0)) {
|
||||
error = -EFSCORRUPTED;
|
||||
goto trans_cancel;
|
||||
}
|
||||
@@ -1238,8 +1236,9 @@ xfs_iread_extents(
|
||||
|
||||
ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL));
|
||||
|
||||
if (unlikely(XFS_IFORK_FORMAT(ip, whichfork) != XFS_DINODE_FMT_BTREE)) {
|
||||
XFS_ERROR_REPORT(__func__, XFS_ERRLEVEL_LOW, mp);
|
||||
if (XFS_IS_CORRUPT(mp,
|
||||
XFS_IFORK_FORMAT(ip, whichfork) !=
|
||||
XFS_DINODE_FMT_BTREE)) {
|
||||
error = -EFSCORRUPTED;
|
||||
goto out;
|
||||
}
|
||||
@@ -1253,8 +1252,8 @@ xfs_iread_extents(
|
||||
if (error)
|
||||
goto out;
|
||||
|
||||
if (ir.loaded != XFS_IFORK_NEXTENTS(ip, whichfork)) {
|
||||
XFS_ERROR_REPORT(__func__, XFS_ERRLEVEL_LOW, mp);
|
||||
if (XFS_IS_CORRUPT(mp,
|
||||
ir.loaded != XFS_IFORK_NEXTENTS(ip, whichfork))) {
|
||||
error = -EFSCORRUPTED;
|
||||
goto out;
|
||||
}
|
||||
@@ -1444,10 +1443,8 @@ xfs_bmap_last_offset(
|
||||
if (XFS_IFORK_FORMAT(ip, whichfork) == XFS_DINODE_FMT_LOCAL)
|
||||
return 0;
|
||||
|
||||
if (!xfs_ifork_has_extents(ip, whichfork)) {
|
||||
ASSERT(0);
|
||||
if (XFS_IS_CORRUPT(ip->i_mount, !xfs_ifork_has_extents(ip, whichfork)))
|
||||
return -EFSCORRUPTED;
|
||||
}
|
||||
|
||||
error = xfs_bmap_last_extent(NULL, ip, whichfork, &rec, &is_empty);
|
||||
if (error || is_empty)
|
||||
@@ -3906,10 +3903,8 @@ xfs_bmapi_read(
|
||||
XFS_BMAPI_COWFORK)));
|
||||
ASSERT(xfs_isilocked(ip, XFS_ILOCK_SHARED|XFS_ILOCK_EXCL));
|
||||
|
||||
if (unlikely(XFS_TEST_ERROR(
|
||||
!xfs_ifork_has_extents(ip, whichfork),
|
||||
mp, XFS_ERRTAG_BMAPIFORMAT))) {
|
||||
XFS_ERROR_REPORT("xfs_bmapi_read", XFS_ERRLEVEL_LOW, mp);
|
||||
if (XFS_IS_CORRUPT(mp, !xfs_ifork_has_extents(ip, whichfork)) ||
|
||||
XFS_TEST_ERROR(false, mp, XFS_ERRTAG_BMAPIFORMAT)) {
|
||||
return -EFSCORRUPTED;
|
||||
}
|
||||
|
||||
@@ -4417,10 +4412,8 @@ xfs_bmapi_write(
|
||||
ASSERT((flags & (XFS_BMAPI_PREALLOC | XFS_BMAPI_ZERO)) !=
|
||||
(XFS_BMAPI_PREALLOC | XFS_BMAPI_ZERO));
|
||||
|
||||
if (unlikely(XFS_TEST_ERROR(
|
||||
!xfs_ifork_has_extents(ip, whichfork),
|
||||
mp, XFS_ERRTAG_BMAPIFORMAT))) {
|
||||
XFS_ERROR_REPORT("xfs_bmapi_write", XFS_ERRLEVEL_LOW, mp);
|
||||
if (XFS_IS_CORRUPT(mp, !xfs_ifork_has_extents(ip, whichfork)) ||
|
||||
XFS_TEST_ERROR(false, mp, XFS_ERRTAG_BMAPIFORMAT)) {
|
||||
return -EFSCORRUPTED;
|
||||
}
|
||||
|
||||
@@ -4686,10 +4679,8 @@ xfs_bmapi_remap(
|
||||
ASSERT((flags & (XFS_BMAPI_ATTRFORK | XFS_BMAPI_PREALLOC)) !=
|
||||
(XFS_BMAPI_ATTRFORK | XFS_BMAPI_PREALLOC));
|
||||
|
||||
if (unlikely(XFS_TEST_ERROR(
|
||||
!xfs_ifork_has_extents(ip, whichfork),
|
||||
mp, XFS_ERRTAG_BMAPIFORMAT))) {
|
||||
XFS_ERROR_REPORT("xfs_bmapi_remap", XFS_ERRLEVEL_LOW, mp);
|
||||
if (XFS_IS_CORRUPT(mp, !xfs_ifork_has_extents(ip, whichfork)) ||
|
||||
XFS_TEST_ERROR(false, mp, XFS_ERRTAG_BMAPIFORMAT)) {
|
||||
return -EFSCORRUPTED;
|
||||
}
|
||||
|
||||
@@ -5311,7 +5302,7 @@ __xfs_bunmapi(
|
||||
int isrt; /* freeing in rt area */
|
||||
int logflags; /* transaction logging flags */
|
||||
xfs_extlen_t mod; /* rt extent offset */
|
||||
struct xfs_mount *mp; /* mount structure */
|
||||
struct xfs_mount *mp = ip->i_mount;
|
||||
int tmp_logflags; /* partial logging flags */
|
||||
int wasdel; /* was a delayed alloc extent */
|
||||
int whichfork; /* data or attribute fork */
|
||||
@@ -5328,12 +5319,8 @@ __xfs_bunmapi(
|
||||
whichfork = xfs_bmapi_whichfork(flags);
|
||||
ASSERT(whichfork != XFS_COW_FORK);
|
||||
ifp = XFS_IFORK_PTR(ip, whichfork);
|
||||
if (unlikely(!xfs_ifork_has_extents(ip, whichfork))) {
|
||||
XFS_ERROR_REPORT("xfs_bunmapi", XFS_ERRLEVEL_LOW,
|
||||
ip->i_mount);
|
||||
if (XFS_IS_CORRUPT(mp, !xfs_ifork_has_extents(ip, whichfork)))
|
||||
return -EFSCORRUPTED;
|
||||
}
|
||||
mp = ip->i_mount;
|
||||
if (XFS_FORCED_SHUTDOWN(mp))
|
||||
return -EIO;
|
||||
|
||||
@@ -5826,10 +5813,8 @@ xfs_bmap_collapse_extents(
|
||||
int error = 0;
|
||||
int logflags = 0;
|
||||
|
||||
if (unlikely(XFS_TEST_ERROR(
|
||||
!xfs_ifork_has_extents(ip, whichfork),
|
||||
mp, XFS_ERRTAG_BMAPIFORMAT))) {
|
||||
XFS_ERROR_REPORT(__func__, XFS_ERRLEVEL_LOW, mp);
|
||||
if (XFS_IS_CORRUPT(mp, !xfs_ifork_has_extents(ip, whichfork)) ||
|
||||
XFS_TEST_ERROR(false, mp, XFS_ERRTAG_BMAPIFORMAT)) {
|
||||
return -EFSCORRUPTED;
|
||||
}
|
||||
|
||||
@@ -5945,10 +5930,8 @@ xfs_bmap_insert_extents(
|
||||
int error = 0;
|
||||
int logflags = 0;
|
||||
|
||||
if (unlikely(XFS_TEST_ERROR(
|
||||
!xfs_ifork_has_extents(ip, whichfork),
|
||||
mp, XFS_ERRTAG_BMAPIFORMAT))) {
|
||||
XFS_ERROR_REPORT(__func__, XFS_ERRLEVEL_LOW, mp);
|
||||
if (XFS_IS_CORRUPT(mp, !xfs_ifork_has_extents(ip, whichfork)) ||
|
||||
XFS_TEST_ERROR(false, mp, XFS_ERRTAG_BMAPIFORMAT)) {
|
||||
return -EFSCORRUPTED;
|
||||
}
|
||||
|
||||
@@ -5986,8 +5969,8 @@ xfs_bmap_insert_extents(
|
||||
goto del_cursor;
|
||||
}
|
||||
|
||||
if (stop_fsb >= got.br_startoff + got.br_blockcount) {
|
||||
ASSERT(0);
|
||||
if (XFS_IS_CORRUPT(mp,
|
||||
stop_fsb >= got.br_startoff + got.br_blockcount)) {
|
||||
error = -EFSCORRUPTED;
|
||||
goto del_cursor;
|
||||
}
|
||||
@@ -6053,11 +6036,8 @@ xfs_bmap_split_extent_at(
|
||||
int logflags = 0;
|
||||
int i = 0;
|
||||
|
||||
if (unlikely(XFS_TEST_ERROR(
|
||||
!xfs_ifork_has_extents(ip, whichfork),
|
||||
mp, XFS_ERRTAG_BMAPIFORMAT))) {
|
||||
XFS_ERROR_REPORT("xfs_bmap_split_extent_at",
|
||||
XFS_ERRLEVEL_LOW, mp);
|
||||
if (XFS_IS_CORRUPT(mp, !xfs_ifork_has_extents(ip, whichfork)) ||
|
||||
XFS_TEST_ERROR(false, mp, XFS_ERRTAG_BMAPIFORMAT)) {
|
||||
return -EFSCORRUPTED;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user