summaryrefslogtreecommitdiff
path: root/fs/xfs/libxfs/xfs_refcount_btree.h
diff options
context:
space:
mode:
authorDarrick J. Wong <darrick.wong@oracle.com>2019-08-30 15:44:41 -0700
committerDarrick J. Wong <darrick.wong@oracle.com>2019-10-28 21:00:37 -0700
commit5fc983d667f5e74f1b94fc2f3842adc6730e7bf2 (patch)
tree5c3fe502c530d84156ac8c88093e82c755a9ef93 /fs/xfs/libxfs/xfs_refcount_btree.h
parentb71b64904036dc3a102dceb659ef2c8756cbeddc (diff)
xfs: support staging cursors for per-AG btree typesbtree-bulk-loading_2019-10-28
Add support for btree staging cursors for the per-AG btree types. This is needed both for online repair and also to convert xfs_repair to use btree bulk loading. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Diffstat (limited to 'fs/xfs/libxfs/xfs_refcount_btree.h')
-rw-r--r--fs/xfs/libxfs/xfs_refcount_btree.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/fs/xfs/libxfs/xfs_refcount_btree.h b/fs/xfs/libxfs/xfs_refcount_btree.h
index ba416f71c824..978b714be9f4 100644
--- a/fs/xfs/libxfs/xfs_refcount_btree.h
+++ b/fs/xfs/libxfs/xfs_refcount_btree.h
@@ -13,6 +13,7 @@
struct xfs_buf;
struct xfs_btree_cur;
struct xfs_mount;
+struct xbtree_afakeroot;
/*
* Btree block header size
@@ -46,6 +47,9 @@ struct xfs_mount;
extern struct xfs_btree_cur *xfs_refcountbt_init_cursor(struct xfs_mount *mp,
struct xfs_trans *tp, struct xfs_buf *agbp,
xfs_agnumber_t agno);
+struct xfs_btree_cur *xfs_refcountbt_stage_cursor(struct xfs_mount *mp,
+ struct xfs_trans *tp, struct xbtree_afakeroot *afake,
+ xfs_agnumber_t agno);
extern int xfs_refcountbt_maxrecs(int blocklen, bool leaf);
extern void xfs_refcountbt_compute_maxlevels(struct xfs_mount *mp);
@@ -58,4 +62,7 @@ extern int xfs_refcountbt_calc_reserves(struct xfs_mount *mp,
struct xfs_trans *tp, xfs_agnumber_t agno, xfs_extlen_t *ask,
xfs_extlen_t *used);
+void xfs_refcountbt_commit_staged_btree(struct xfs_btree_cur *cur,
+ struct xfs_buf *agbp);
+
#endif /* __XFS_REFCOUNT_BTREE_H__ */