diff options
Diffstat (limited to 'fs/xfs')
-rw-r--r-- | fs/xfs/xfs_bmap.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/fs/xfs/xfs_bmap.c b/fs/xfs/xfs_bmap.c index f3a3768189bb..3e9c278a8f78 100644 --- a/fs/xfs/xfs_bmap.c +++ b/fs/xfs/xfs_bmap.c | |||
@@ -4487,6 +4487,16 @@ xfs_bmapi( | |||
4487 | /* Figure out the extent size, adjust alen */ | 4487 | /* Figure out the extent size, adjust alen */ |
4488 | extsz = xfs_get_extsz_hint(ip); | 4488 | extsz = xfs_get_extsz_hint(ip); |
4489 | if (extsz) { | 4489 | if (extsz) { |
4490 | /* | ||
4491 | * make sure we don't exceed a single | ||
4492 | * extent length when we align the | ||
4493 | * extent by reducing length we are | ||
4494 | * going to allocate by the maximum | ||
4495 | * amount extent size aligment may | ||
4496 | * require. | ||
4497 | */ | ||
4498 | alen = XFS_FILBLKS_MIN(len, | ||
4499 | MAXEXTLEN - (2 * extsz - 1)); | ||
4490 | error = xfs_bmap_extsize_align(mp, | 4500 | error = xfs_bmap_extsize_align(mp, |
4491 | &got, &prev, extsz, | 4501 | &got, &prev, extsz, |
4492 | rt, eof, | 4502 | rt, eof, |