@@ -351,7 +351,9 @@ build_new_datafork(
/* Set up staging for the new bmbt */
ifake.if_fork = kmem_cache_zalloc(xfs_ifork_cache, 0);
ifake.if_fork_size = xfs_inode_fork_size(ip, XFS_DATA_FORK);
- bmap_cur = libxfs_bmbt_stage_cursor(ip->i_mount, ip, &ifake);
+ bmap_cur = libxfs_bmbt_init_cursor(ip->i_mount, NULL, ip,
+ XFS_STAGING_FORK);
+ libxfs_btree_stage_ifakeroot(bmap_cur, &ifake);
/*
* Figure out the size and format of the new fork, then fill it with
@@ -405,7 +407,9 @@ estimate_size(
ifake.if_fork = kmem_cache_zalloc(xfs_ifork_cache, 0);
ifake.if_fork_size = xfs_inode_fork_size(ip, XFS_DATA_FORK);
- bmap_cur = libxfs_bmbt_stage_cursor(ip->i_mount, ip, &ifake);
+ bmap_cur = libxfs_bmbt_init_cursor(ip->i_mount, NULL, ip,
+ XFS_STAGING_FORK);
+ libxfs_btree_stage_ifakeroot(bmap_cur, &ifake);
error = -libxfs_btree_bload_compute_geometry(bmap_cur, &bmap_bload,
nextents);
libxfs_btree_del_cursor(bmap_cur, error);
@@ -54,6 +54,7 @@
#define xfs_bmbt_commit_staged_btree libxfs_bmbt_commit_staged_btree
#define xfs_bmbt_disk_get_startoff libxfs_bmbt_disk_get_startoff
#define xfs_bmbt_disk_set_all libxfs_bmbt_disk_set_all
+#define xfs_bmbt_init_cursor libxfs_bmbt_init_cursor
#define xfs_bmbt_maxlevels_ondisk libxfs_bmbt_maxlevels_ondisk
#define xfs_bmbt_maxrecs libxfs_bmbt_maxrecs
#define xfs_bmbt_stage_cursor libxfs_bmbt_stage_cursor
@@ -65,6 +66,7 @@
#define xfs_btree_init_block libxfs_btree_init_block
#define xfs_btree_rec_addr libxfs_btree_rec_addr
#define xfs_btree_stage_afakeroot libxfs_btree_stage_afakeroot
+#define xfs_btree_stage_ifakeroot libxfs_btree_stage_ifakeroot
#define xfs_buf_delwri_submit libxfs_buf_delwri_submit
#define xfs_buf_get libxfs_buf_get
#define xfs_buf_get_uncached libxfs_buf_get_uncached
@@ -597,25 +597,6 @@ xfs_bmbt_block_maxrecs(
return blocklen / (sizeof(xfs_bmbt_key_t) + sizeof(xfs_bmbt_ptr_t));
}
-/*
- * Allocate a new bmap btree cursor for reloading an inode block mapping data
- * structure. Note that callers can use the staged cursor to reload extents
- * format inode forks if they rebuild the iext tree and commit the staged
- * cursor immediately.
- */
-struct xfs_btree_cur *
-xfs_bmbt_stage_cursor(
- struct xfs_mount *mp,
- struct xfs_inode *ip,
- struct xbtree_ifakeroot *ifake)
-{
- struct xfs_btree_cur *cur;
-
- cur = xfs_bmbt_init_cursor(mp, NULL, ip, XFS_STAGING_FORK);
- xfs_btree_stage_ifakeroot(cur, ifake);
- return cur;
-}
-
/*
* Swap in the new inode fork root. Once we pass this point the newly rebuilt
* mappings are in place and we have to kill off any old btree blocks.
@@ -107,8 +107,6 @@ extern int xfs_bmbt_change_owner(struct xfs_trans *tp, struct xfs_inode *ip,
extern struct xfs_btree_cur *xfs_bmbt_init_cursor(struct xfs_mount *,
struct xfs_trans *, struct xfs_inode *, int);
-struct xfs_btree_cur *xfs_bmbt_stage_cursor(struct xfs_mount *mp,
- struct xfs_inode *ip, struct xbtree_ifakeroot *ifake);
void xfs_bmbt_commit_staged_btree(struct xfs_btree_cur *cur,
struct xfs_trans *tp, int whichfork);
@@ -475,7 +475,9 @@ xrep_bmap_build_new_fork(
*/
libxfs_rmap_ino_bmbt_owner(&oinfo, sc->ip->i_ino, rb->whichfork);
bulkload_init_inode(&rb->new_fork_info, sc, rb->whichfork, &oinfo);
- bmap_cur = libxfs_bmbt_stage_cursor(sc->mp, sc->ip, ifake);
+ bmap_cur = libxfs_bmbt_init_cursor(sc->mp, NULL, sc->ip,
+ XFS_STAGING_FORK);
+ libxfs_btree_stage_ifakeroot(bmap_cur, ifake);
/*
* Figure out the size and format of the new fork, then fill it with