[XFS] A bug was found in xfs_bmap_add_extent_unwritten_real(). In a
particular case, the delta param which is supposed to describe the region where extents have changed was not updated appropriately. SGI-PV: 984030 SGI-Modid: xfs-linux-melb:xfs-kern:31663a Signed-off-by: Tim Shimmin <tes@sgi.com> Signed-off-by: Lachlan McIlroy <lachlan@sgi.com> Signed-off-by: Olaf Weber <olaf@sgi.com>
This commit is contained in:
@@ -1740,9 +1740,9 @@ xfs_bmap_add_extent_unwritten_real(
|
|||||||
r[1].br_state)))
|
r[1].br_state)))
|
||||||
goto done;
|
goto done;
|
||||||
/* new left extent - oldext */
|
/* new left extent - oldext */
|
||||||
PREV.br_blockcount =
|
|
||||||
new->br_startoff - PREV.br_startoff;
|
|
||||||
cur->bc_rec.b = PREV;
|
cur->bc_rec.b = PREV;
|
||||||
|
cur->bc_rec.b.br_blockcount =
|
||||||
|
new->br_startoff - PREV.br_startoff;
|
||||||
if ((error = xfs_bmbt_insert(cur, &i)))
|
if ((error = xfs_bmbt_insert(cur, &i)))
|
||||||
goto done;
|
goto done;
|
||||||
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
XFS_WANT_CORRUPTED_GOTO(i == 1, done);
|
||||||
|
Reference in New Issue
Block a user