All the variables xfs_bmap_isaeof() is passed are contained within
the xfs_bmalloca structure. Pass that instead.
Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
Index: xfs/fs/xfs/xfs_bmap.c
===================================================================
--- xfs.orig/fs/xfs/xfs_bmap.c 2011-08-23 21:14:33.735424450 +0200
+++ xfs/fs/xfs/xfs_bmap.c 2011-08-23 21:14:35.358748989 +0200
@@ -3869,17 +3869,16 @@ xfs_bmap_last_extent(
*/
STATIC int
xfs_bmap_isaeof(
- struct xfs_inode *ip,
- xfs_fileoff_t off,
- int whichfork,
- char *aeof)
+ struct xfs_bmalloca *bma,
+ int whichfork)
{
struct xfs_bmbt_irec rec;
int is_empty;
int error;
- *aeof = 0;
- error = xfs_bmap_last_extent(NULL, ip, whichfork, &rec, &is_empty);
+ bma->aeof = 0;
+ error = xfs_bmap_last_extent(bma->tp, bma->ip, whichfork, &rec,
+ &is_empty);
if (error || is_empty)
return error;
@@ -3887,10 +3886,10 @@ xfs_bmap_isaeof(
* Check we are allocating in the last extent (for delayed allocations)
* or past the last extent for non-delayed allocations.
*/
- *aeof = (off >= rec.br_startoff &&
- off < rec.br_startoff + rec.br_blockcount &&
- isnullstartblock(rec.br_startblock)) ||
- off >= rec.br_startoff + rec.br_blockcount;
+ bma->aeof = (bma->off >= rec.br_startoff &&
+ bma->off < rec.br_startoff + rec.br_blockcount &&
+ isnullstartblock(rec.br_startblock)) ||
+ bma->off >= rec.br_startoff + rec.br_blockcount;
return 0;
}
@@ -4653,7 +4652,7 @@ xfs_bmapi_allocate(
*/
if (mp->m_dalign && alen >= mp->m_dalign &&
!(flags & XFS_BMAPI_METADATA) && whichfork == XFS_DATA_FORK) {
- error = xfs_bmap_isaeof(bma->ip, aoff, whichfork, &bma->aeof);
+ error = xfs_bmap_isaeof(bma, whichfork);
if (error)
return error;
}
|