[XFS] Convert ASSERTs to XFS_WANT_CORRUPTED_GOTOs
ASSERTs are no good to us on a non-debug build so use XFS_WANT_CORRUPTED_GOTOs to report extent btree corruption ASAP. SGI-PV: 983500 SGI-Modid: xfs-linux-melb:xfs-kern:31338a Signed-off-by: Lachlan McIlroy <lachlan@sgi.com> Signed-off-by: Christoph Hellwig <hch@infradead.org>
This commit is contained in:
parent
90bb7ab077
commit
6bd8fc8a55
|
@ -428,7 +428,8 @@ xfs_bmap_add_attrfork_btree(
|
||||||
cur->bc_private.b.firstblock = *firstblock;
|
cur->bc_private.b.firstblock = *firstblock;
|
||||||
if ((error = xfs_bmbt_lookup_ge(cur, 0, 0, 0, &stat)))
|
if ((error = xfs_bmbt_lookup_ge(cur, 0, 0, 0, &stat)))
|
||||||
goto error0;
|
goto error0;
|
||||||
ASSERT(stat == 1); /* must be at least one entry */
|
/* must be at least one entry */
|
||||||
|
XFS_WANT_CORRUPTED_GOTO(stat == 1, error0);
|
||||||
if ((error = xfs_bmbt_newroot(cur, flags, &stat)))
|
if ((error = xfs_bmbt_newroot(cur, flags, &stat)))
|
||||||
goto error0;
|
goto error0;
|
||||||
if (stat == 0) {
|
if (stat == 0) {
|
||||||
|
@ -816,13 +817,13 @@ xfs_bmap_add_extent_delay_real(
|
||||||
RIGHT.br_startblock,
|
RIGHT.br_startblock,
|
||||||
RIGHT.br_blockcount, &i)))
|
RIGHT.br_blockcount, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_delete(cur, &i)))
|
if ((error = xfs_bmbt_delete(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, LEFT.br_startoff,
|
if ((error = xfs_bmbt_update(cur, LEFT.br_startoff,
|
||||||
LEFT.br_startblock,
|
LEFT.br_startblock,
|
||||||
LEFT.br_blockcount +
|
LEFT.br_blockcount +
|
||||||
|
@ -860,7 +861,7 @@ xfs_bmap_add_extent_delay_real(
|
||||||
LEFT.br_startblock, LEFT.br_blockcount,
|
LEFT.br_startblock, LEFT.br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, LEFT.br_startoff,
|
if ((error = xfs_bmbt_update(cur, LEFT.br_startoff,
|
||||||
LEFT.br_startblock,
|
LEFT.br_startblock,
|
||||||
LEFT.br_blockcount +
|
LEFT.br_blockcount +
|
||||||
|
@ -895,7 +896,7 @@ xfs_bmap_add_extent_delay_real(
|
||||||
RIGHT.br_startblock,
|
RIGHT.br_startblock,
|
||||||
RIGHT.br_blockcount, &i)))
|
RIGHT.br_blockcount, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, PREV.br_startoff,
|
if ((error = xfs_bmbt_update(cur, PREV.br_startoff,
|
||||||
new->br_startblock,
|
new->br_startblock,
|
||||||
PREV.br_blockcount +
|
PREV.br_blockcount +
|
||||||
|
@ -928,11 +929,11 @@ xfs_bmap_add_extent_delay_real(
|
||||||
new->br_startblock, new->br_blockcount,
|
new->br_startblock, new->br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 0);
|
XFS_WANT_CORRUPTED_GOTO(i == 0, done);
|
||||||
cur->bc_rec.b.br_state = XFS_EXT_NORM;
|
cur->bc_rec.b.br_state = XFS_EXT_NORM;
|
||||||
if ((error = xfs_bmbt_insert(cur, &i)))
|
if ((error = xfs_bmbt_insert(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
}
|
}
|
||||||
*dnew = 0;
|
*dnew = 0;
|
||||||
/* DELTA: The in-core extent described by new changed type. */
|
/* DELTA: The in-core extent described by new changed type. */
|
||||||
|
@ -963,7 +964,7 @@ xfs_bmap_add_extent_delay_real(
|
||||||
LEFT.br_startblock, LEFT.br_blockcount,
|
LEFT.br_startblock, LEFT.br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, LEFT.br_startoff,
|
if ((error = xfs_bmbt_update(cur, LEFT.br_startoff,
|
||||||
LEFT.br_startblock,
|
LEFT.br_startblock,
|
||||||
LEFT.br_blockcount +
|
LEFT.br_blockcount +
|
||||||
|
@ -1004,11 +1005,11 @@ xfs_bmap_add_extent_delay_real(
|
||||||
new->br_startblock, new->br_blockcount,
|
new->br_startblock, new->br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 0);
|
XFS_WANT_CORRUPTED_GOTO(i == 0, done);
|
||||||
cur->bc_rec.b.br_state = XFS_EXT_NORM;
|
cur->bc_rec.b.br_state = XFS_EXT_NORM;
|
||||||
if ((error = xfs_bmbt_insert(cur, &i)))
|
if ((error = xfs_bmbt_insert(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
}
|
}
|
||||||
if (ip->i_d.di_format == XFS_DINODE_FMT_EXTENTS &&
|
if (ip->i_d.di_format == XFS_DINODE_FMT_EXTENTS &&
|
||||||
ip->i_d.di_nextents > ip->i_df.if_ext_max) {
|
ip->i_d.di_nextents > ip->i_df.if_ext_max) {
|
||||||
|
@ -1054,7 +1055,7 @@ xfs_bmap_add_extent_delay_real(
|
||||||
RIGHT.br_startblock,
|
RIGHT.br_startblock,
|
||||||
RIGHT.br_blockcount, &i)))
|
RIGHT.br_blockcount, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, new->br_startoff,
|
if ((error = xfs_bmbt_update(cur, new->br_startoff,
|
||||||
new->br_startblock,
|
new->br_startblock,
|
||||||
new->br_blockcount +
|
new->br_blockcount +
|
||||||
|
@ -1094,11 +1095,11 @@ xfs_bmap_add_extent_delay_real(
|
||||||
new->br_startblock, new->br_blockcount,
|
new->br_startblock, new->br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 0);
|
XFS_WANT_CORRUPTED_GOTO(i == 0, done);
|
||||||
cur->bc_rec.b.br_state = XFS_EXT_NORM;
|
cur->bc_rec.b.br_state = XFS_EXT_NORM;
|
||||||
if ((error = xfs_bmbt_insert(cur, &i)))
|
if ((error = xfs_bmbt_insert(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
}
|
}
|
||||||
if (ip->i_d.di_format == XFS_DINODE_FMT_EXTENTS &&
|
if (ip->i_d.di_format == XFS_DINODE_FMT_EXTENTS &&
|
||||||
ip->i_d.di_nextents > ip->i_df.if_ext_max) {
|
ip->i_d.di_nextents > ip->i_df.if_ext_max) {
|
||||||
|
@ -1149,11 +1150,11 @@ xfs_bmap_add_extent_delay_real(
|
||||||
new->br_startblock, new->br_blockcount,
|
new->br_startblock, new->br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 0);
|
XFS_WANT_CORRUPTED_GOTO(i == 0, done);
|
||||||
cur->bc_rec.b.br_state = XFS_EXT_NORM;
|
cur->bc_rec.b.br_state = XFS_EXT_NORM;
|
||||||
if ((error = xfs_bmbt_insert(cur, &i)))
|
if ((error = xfs_bmbt_insert(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
}
|
}
|
||||||
if (ip->i_d.di_format == XFS_DINODE_FMT_EXTENTS &&
|
if (ip->i_d.di_format == XFS_DINODE_FMT_EXTENTS &&
|
||||||
ip->i_d.di_nextents > ip->i_df.if_ext_max) {
|
ip->i_d.di_nextents > ip->i_df.if_ext_max) {
|
||||||
|
@ -1377,19 +1378,19 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
RIGHT.br_startblock,
|
RIGHT.br_startblock,
|
||||||
RIGHT.br_blockcount, &i)))
|
RIGHT.br_blockcount, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_delete(cur, &i)))
|
if ((error = xfs_bmbt_delete(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_delete(cur, &i)))
|
if ((error = xfs_bmbt_delete(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, LEFT.br_startoff,
|
if ((error = xfs_bmbt_update(cur, LEFT.br_startoff,
|
||||||
LEFT.br_startblock,
|
LEFT.br_startblock,
|
||||||
LEFT.br_blockcount + PREV.br_blockcount +
|
LEFT.br_blockcount + PREV.br_blockcount +
|
||||||
|
@ -1426,13 +1427,13 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
PREV.br_startblock, PREV.br_blockcount,
|
PREV.br_startblock, PREV.br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_delete(cur, &i)))
|
if ((error = xfs_bmbt_delete(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, LEFT.br_startoff,
|
if ((error = xfs_bmbt_update(cur, LEFT.br_startoff,
|
||||||
LEFT.br_startblock,
|
LEFT.br_startblock,
|
||||||
LEFT.br_blockcount + PREV.br_blockcount,
|
LEFT.br_blockcount + PREV.br_blockcount,
|
||||||
|
@ -1469,13 +1470,13 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
RIGHT.br_startblock,
|
RIGHT.br_startblock,
|
||||||
RIGHT.br_blockcount, &i)))
|
RIGHT.br_blockcount, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_delete(cur, &i)))
|
if ((error = xfs_bmbt_delete(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, new->br_startoff,
|
if ((error = xfs_bmbt_update(cur, new->br_startoff,
|
||||||
new->br_startblock,
|
new->br_startblock,
|
||||||
new->br_blockcount + RIGHT.br_blockcount,
|
new->br_blockcount + RIGHT.br_blockcount,
|
||||||
|
@ -1508,7 +1509,7 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
new->br_startblock, new->br_blockcount,
|
new->br_startblock, new->br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, new->br_startoff,
|
if ((error = xfs_bmbt_update(cur, new->br_startoff,
|
||||||
new->br_startblock, new->br_blockcount,
|
new->br_startblock, new->br_blockcount,
|
||||||
newext)))
|
newext)))
|
||||||
|
@ -1549,7 +1550,7 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
PREV.br_startblock, PREV.br_blockcount,
|
PREV.br_startblock, PREV.br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur,
|
if ((error = xfs_bmbt_update(cur,
|
||||||
PREV.br_startoff + new->br_blockcount,
|
PREV.br_startoff + new->br_blockcount,
|
||||||
PREV.br_startblock + new->br_blockcount,
|
PREV.br_startblock + new->br_blockcount,
|
||||||
|
@ -1596,7 +1597,7 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
PREV.br_startblock, PREV.br_blockcount,
|
PREV.br_startblock, PREV.br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur,
|
if ((error = xfs_bmbt_update(cur,
|
||||||
PREV.br_startoff + new->br_blockcount,
|
PREV.br_startoff + new->br_blockcount,
|
||||||
PREV.br_startblock + new->br_blockcount,
|
PREV.br_startblock + new->br_blockcount,
|
||||||
|
@ -1606,7 +1607,7 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
cur->bc_rec.b = *new;
|
cur->bc_rec.b = *new;
|
||||||
if ((error = xfs_bmbt_insert(cur, &i)))
|
if ((error = xfs_bmbt_insert(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
}
|
}
|
||||||
/* DELTA: One in-core extent is split in two. */
|
/* DELTA: One in-core extent is split in two. */
|
||||||
temp = PREV.br_startoff;
|
temp = PREV.br_startoff;
|
||||||
|
@ -1640,7 +1641,7 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
PREV.br_startblock,
|
PREV.br_startblock,
|
||||||
PREV.br_blockcount, &i)))
|
PREV.br_blockcount, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, PREV.br_startoff,
|
if ((error = xfs_bmbt_update(cur, PREV.br_startoff,
|
||||||
PREV.br_startblock,
|
PREV.br_startblock,
|
||||||
PREV.br_blockcount - new->br_blockcount,
|
PREV.br_blockcount - new->br_blockcount,
|
||||||
|
@ -1682,7 +1683,7 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
PREV.br_startblock, PREV.br_blockcount,
|
PREV.br_startblock, PREV.br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, PREV.br_startoff,
|
if ((error = xfs_bmbt_update(cur, PREV.br_startoff,
|
||||||
PREV.br_startblock,
|
PREV.br_startblock,
|
||||||
PREV.br_blockcount - new->br_blockcount,
|
PREV.br_blockcount - new->br_blockcount,
|
||||||
|
@ -1692,11 +1693,11 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
new->br_startblock, new->br_blockcount,
|
new->br_startblock, new->br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 0);
|
XFS_WANT_CORRUPTED_GOTO(i == 0, done);
|
||||||
cur->bc_rec.b.br_state = XFS_EXT_NORM;
|
cur->bc_rec.b.br_state = XFS_EXT_NORM;
|
||||||
if ((error = xfs_bmbt_insert(cur, &i)))
|
if ((error = xfs_bmbt_insert(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
}
|
}
|
||||||
/* DELTA: One in-core extent is split in two. */
|
/* DELTA: One in-core extent is split in two. */
|
||||||
temp = PREV.br_startoff;
|
temp = PREV.br_startoff;
|
||||||
|
@ -1732,7 +1733,7 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
PREV.br_startblock, PREV.br_blockcount,
|
PREV.br_startblock, PREV.br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
/* new right extent - oldext */
|
/* new right extent - oldext */
|
||||||
if ((error = xfs_bmbt_update(cur, r[1].br_startoff,
|
if ((error = xfs_bmbt_update(cur, r[1].br_startoff,
|
||||||
r[1].br_startblock, r[1].br_blockcount,
|
r[1].br_startblock, r[1].br_blockcount,
|
||||||
|
@ -1744,15 +1745,15 @@ xfs_bmap_add_extent_unwritten_real(
|
||||||
cur->bc_rec.b = PREV;
|
cur->bc_rec.b = PREV;
|
||||||
if ((error = xfs_bmbt_insert(cur, &i)))
|
if ((error = xfs_bmbt_insert(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_increment(cur, 0, &i)))
|
if ((error = xfs_bmbt_increment(cur, 0, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
/* new middle extent - newext */
|
/* new middle extent - newext */
|
||||||
cur->bc_rec.b = *new;
|
cur->bc_rec.b = *new;
|
||||||
if ((error = xfs_bmbt_insert(cur, &i)))
|
if ((error = xfs_bmbt_insert(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
}
|
}
|
||||||
/* DELTA: One in-core extent is split in three. */
|
/* DELTA: One in-core extent is split in three. */
|
||||||
temp = PREV.br_startoff;
|
temp = PREV.br_startoff;
|
||||||
|
@ -2097,13 +2098,13 @@ xfs_bmap_add_extent_hole_real(
|
||||||
right.br_startblock,
|
right.br_startblock,
|
||||||
right.br_blockcount, &i)))
|
right.br_blockcount, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_delete(cur, &i)))
|
if ((error = xfs_bmbt_delete(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
if ((error = xfs_bmbt_decrement(cur, 0, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, left.br_startoff,
|
if ((error = xfs_bmbt_update(cur, left.br_startoff,
|
||||||
left.br_startblock,
|
left.br_startblock,
|
||||||
left.br_blockcount +
|
left.br_blockcount +
|
||||||
|
@ -2139,7 +2140,7 @@ xfs_bmap_add_extent_hole_real(
|
||||||
left.br_startblock,
|
left.br_startblock,
|
||||||
left.br_blockcount, &i)))
|
left.br_blockcount, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, left.br_startoff,
|
if ((error = xfs_bmbt_update(cur, left.br_startoff,
|
||||||
left.br_startblock,
|
left.br_startblock,
|
||||||
left.br_blockcount +
|
left.br_blockcount +
|
||||||
|
@ -2174,7 +2175,7 @@ xfs_bmap_add_extent_hole_real(
|
||||||
right.br_startblock,
|
right.br_startblock,
|
||||||
right.br_blockcount, &i)))
|
right.br_blockcount, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
if ((error = xfs_bmbt_update(cur, new->br_startoff,
|
if ((error = xfs_bmbt_update(cur, new->br_startoff,
|
||||||
new->br_startblock,
|
new->br_startblock,
|
||||||
new->br_blockcount +
|
new->br_blockcount +
|
||||||
|
@ -2208,11 +2209,11 @@ xfs_bmap_add_extent_hole_real(
|
||||||
new->br_startblock,
|
new->br_startblock,
|
||||||
new->br_blockcount, &i)))
|
new->br_blockcount, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 0);
|
XFS_WANT_CORRUPTED_GOTO(i == 0, done);
|
||||||
cur->bc_rec.b.br_state = new->br_state;
|
cur->bc_rec.b.br_state = new->br_state;
|
||||||
if ((error = xfs_bmbt_insert(cur, &i)))
|
if ((error = xfs_bmbt_insert(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
}
|
}
|
||||||
/* DELTA: A new extent was added in a hole. */
|
/* DELTA: A new extent was added in a hole. */
|
||||||
temp = new->br_startoff;
|
temp = new->br_startoff;
|
||||||
|
@ -3131,7 +3132,7 @@ xfs_bmap_del_extent(
|
||||||
got.br_startblock, got.br_blockcount,
|
got.br_startblock, got.br_blockcount,
|
||||||
&i)))
|
&i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
}
|
}
|
||||||
da_old = da_new = 0;
|
da_old = da_new = 0;
|
||||||
} else {
|
} else {
|
||||||
|
@ -3164,7 +3165,7 @@ xfs_bmap_del_extent(
|
||||||
}
|
}
|
||||||
if ((error = xfs_bmbt_delete(cur, &i)))
|
if ((error = xfs_bmbt_delete(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
|
@ -3268,7 +3269,7 @@ xfs_bmap_del_extent(
|
||||||
got.br_startblock,
|
got.br_startblock,
|
||||||
temp, &i)))
|
temp, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
/*
|
/*
|
||||||
* Update the btree record back
|
* Update the btree record back
|
||||||
* to the original value.
|
* to the original value.
|
||||||
|
@ -3289,7 +3290,7 @@ xfs_bmap_del_extent(
|
||||||
error = XFS_ERROR(ENOSPC);
|
error = XFS_ERROR(ENOSPC);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
ASSERT(i == 1);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
} else
|
} else
|
||||||
flags |= XFS_ILOG_FEXT(whichfork);
|
flags |= XFS_ILOG_FEXT(whichfork);
|
||||||
XFS_IFORK_NEXT_SET(ip, whichfork,
|
XFS_IFORK_NEXT_SET(ip, whichfork,
|
||||||
|
|
Loading…
Reference in New Issue