On Wed, 2011-08-24 at 02:04 -0400, Christoph Hellwig wrote: > 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> This looks good. Now that the transaction pointer is available in xfs_bmap_isaeof(), it gets used in the call to xfs_bmap_last_extent(). It looks to me like this means btree block buffers will be added to and removed from the transaction's item list in xfs_bmap_read_extents(), and that list will be scanned for these buffers in xfs_trans_read_buf() (unlike before). I don't question whether that's correct, but is that desirable? Would we be just as well off *not* providing the transaction pointer? Anyway: Reviewed-by: Alex Elder <aelder@xxxxxxx> > 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); Here is the spot I'm referring to. > if (error || is_empty) > return error; > _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs