diff options
Diffstat (limited to 'fs/xfs/xfs_bmap.c')
-rw-r--r-- | fs/xfs/xfs_bmap.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/fs/xfs/xfs_bmap.c b/fs/xfs/xfs_bmap.c index e0389656ad2..598a30ba314 100644 --- a/fs/xfs/xfs_bmap.c +++ b/fs/xfs/xfs_bmap.c | |||
@@ -4618,19 +4618,13 @@ xfs_bmapi( | |||
4618 | * allocate the stuff asked for in this bmap call | 4618 | * allocate the stuff asked for in this bmap call |
4619 | * but that wouldn't be as good. | 4619 | * but that wouldn't be as good. |
4620 | */ | 4620 | */ |
4621 | if (wasdelay && !(flags & XFS_BMAPI_EXACT)) { | 4621 | if (wasdelay) { |
4622 | alen = (xfs_extlen_t)got.br_blockcount; | 4622 | alen = (xfs_extlen_t)got.br_blockcount; |
4623 | aoff = got.br_startoff; | 4623 | aoff = got.br_startoff; |
4624 | if (lastx != NULLEXTNUM && lastx) { | 4624 | if (lastx != NULLEXTNUM && lastx) { |
4625 | ep = xfs_iext_get_ext(ifp, lastx - 1); | 4625 | ep = xfs_iext_get_ext(ifp, lastx - 1); |
4626 | xfs_bmbt_get_all(ep, &prev); | 4626 | xfs_bmbt_get_all(ep, &prev); |
4627 | } | 4627 | } |
4628 | } else if (wasdelay) { | ||
4629 | alen = (xfs_extlen_t) | ||
4630 | XFS_FILBLKS_MIN(len, | ||
4631 | (got.br_startoff + | ||
4632 | got.br_blockcount) - bno); | ||
4633 | aoff = bno; | ||
4634 | } else { | 4628 | } else { |
4635 | alen = (xfs_extlen_t) | 4629 | alen = (xfs_extlen_t) |
4636 | XFS_FILBLKS_MIN(len, MAXEXTLEN); | 4630 | XFS_FILBLKS_MIN(len, MAXEXTLEN); |