Hi Chandan, Please pull this branch with changes for xfs for 6.9-rc1. As usual, I did a test-merge with the main upstream branch as of a few minutes ago, and didn't see any conflicts. Please let me know if you encounter any problems. --D The following changes since commit f73def90a7cd24a32a42f689efba6a7a35edeb7b: xfs: create predicate to determine if cursor is at inode root level (2024-02-22 12:37:24 -0800) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git tags/btree-remove-btnum-6.9_2024-02-23 for you to fetch changes up to ec793e690f801d97a7ae2a0d429fea1fee4d44aa: xfs: remove xfs_btnum_t (2024-02-22 12:40:51 -0800) ---------------------------------------------------------------- xfs: remove bc_btnum from btree cursors [v29.3 08/18] >From Christoph Hellwig, This series continues the migration of btree geometry information out of the cursor structure and into the ops structure. This time around, we replace the btree type enumeration (btnum) with an explicit name string in the btree ops structure. This enables easy creation of /any/ new btree type without having to mess with libxfs. This has been running on the djcloud for months with no problems. Enjoy! Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> ---------------------------------------------------------------- Christoph Hellwig (26): xfs: move comment about two 2 keys per pointer in the rmap btree xfs: add a xfs_btree_init_ptr_from_cur xfs: don't override bc_ops for staging btrees xfs: fold xfs_allocbt_init_common into xfs_allocbt_init_cursor xfs: remove xfs_allocbt_stage_cursor xfs: fold xfs_inobt_init_common into xfs_inobt_init_cursor xfs: remove xfs_inobt_stage_cursor xfs: fold xfs_refcountbt_init_common into xfs_refcountbt_init_cursor xfs: remove xfs_refcountbt_stage_cursor xfs: fold xfs_rmapbt_init_common into xfs_rmapbt_init_cursor xfs: remove xfs_rmapbt_stage_cursor xfs: make full use of xfs_btree_stage_ifakeroot in xfs_bmbt_stage_cursor xfs: fold xfs_bmbt_init_common into xfs_bmbt_init_cursor xfs: remove xfs_bmbt_stage_cursor xfs: split the agf_roots and agf_levels arrays xfs: add a name field to struct xfs_btree_ops xfs: add a sick_mask to struct xfs_btree_ops xfs: refactor the btree cursor allocation logic in xchk_ag_btcur_init xfs: split xfs_allocbt_init_cursor xfs: remove xfs_inobt_cur xfs: remove the btnum argument to xfs_inobt_count_blocks xfs: remove the which variable in xchk_iallocbt xfs: split xfs_inobt_insert_sprec xfs: split xfs_inobt_init_cursor xfs: pass a 'bool is_finobt' to xfs_inobt_insert xfs: remove xfs_btnum_t Darrick J. Wong (1): xfs: make staging file forks explicit fs/xfs/libxfs/xfs_ag.c | 13 ++- fs/xfs/libxfs/xfs_ag.h | 8 +- fs/xfs/libxfs/xfs_alloc.c | 99 +++++++++----------- fs/xfs/libxfs/xfs_alloc_btree.c | 156 ++++++++++++++++++-------------- fs/xfs/libxfs/xfs_alloc_btree.h | 10 +- fs/xfs/libxfs/xfs_bmap_btree.c | 89 ++++++------------ fs/xfs/libxfs/xfs_bmap_btree.h | 2 - fs/xfs/libxfs/xfs_btree.c | 114 +++++++++++++++++------ fs/xfs/libxfs/xfs_btree.h | 18 ++-- fs/xfs/libxfs/xfs_btree_staging.c | 111 +---------------------- fs/xfs/libxfs/xfs_btree_staging.h | 7 +- fs/xfs/libxfs/xfs_format.h | 21 ++--- fs/xfs/libxfs/xfs_ialloc.c | 181 +++++++++++++++++++++++-------------- fs/xfs/libxfs/xfs_ialloc_btree.c | 144 +++++++++++++---------------- fs/xfs/libxfs/xfs_ialloc_btree.h | 11 +-- fs/xfs/libxfs/xfs_refcount_btree.c | 52 ++++------- fs/xfs/libxfs/xfs_refcount_btree.h | 2 - fs/xfs/libxfs/xfs_rmap_btree.c | 65 +++++-------- fs/xfs/libxfs/xfs_rmap_btree.h | 2 - fs/xfs/libxfs/xfs_shared.h | 35 +++++++ fs/xfs/libxfs/xfs_types.h | 26 +----- fs/xfs/scrub/agheader.c | 12 +-- fs/xfs/scrub/agheader_repair.c | 47 ++++------ fs/xfs/scrub/alloc_repair.c | 27 +++--- fs/xfs/scrub/bmap_repair.c | 8 +- fs/xfs/scrub/btree.c | 12 +-- fs/xfs/scrub/common.c | 72 ++++++++------- fs/xfs/scrub/health.c | 54 ++--------- fs/xfs/scrub/health.h | 4 +- fs/xfs/scrub/ialloc.c | 20 ++-- fs/xfs/scrub/ialloc_repair.c | 8 +- fs/xfs/scrub/iscan.c | 2 +- fs/xfs/scrub/refcount_repair.c | 4 +- fs/xfs/scrub/repair.c | 14 +-- fs/xfs/scrub/rmap.c | 15 ++- fs/xfs/scrub/trace.h | 48 ++++------ fs/xfs/xfs_discard.c | 2 +- fs/xfs/xfs_fsmap.c | 4 +- fs/xfs/xfs_health.c | 36 +++----- fs/xfs/xfs_iwalk.c | 8 +- fs/xfs/xfs_trace.h | 89 ++++++++---------- 41 files changed, 748 insertions(+), 904 deletions(-)