On Wed, Aug 30, 2017 at 06:05:58PM +1000, Dave Chinner wrote: > Ok, that's sounds like it'll fit right in with what I've been > prototyping for the extent code in xfs_bmap.c. I can make that work > with a cursor-based lookup/inc/dec/ins/del API similar to the bmbt > API. I've been looking to abstract the extent manipulations out into > functions that modify both trees like this: > > [note: just put template code in to get my thoughts straight, it's > not working code] FYI, I've got somewhat working changes in that area (still has bugs but a few tests pass :)), what I'm doing is to make sure all of the xfs_bmap_{add,del}_extent_* routines fully operate on xfs_bmbt_irec structures that they acquire through the xfs_bmalloca structure or from xfs_iext_get_extent and update using xfs_iext_update_extent. A nice fallout from that is that we can change the prototypes for xfs_bmbt_lookup_* and xfs_bmbt_update to take a xfs_bmbt_irec as well instead of taking the individual arguments. That should help with your next step cleanups a bit. -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html