From e28eff101d90ad371e90a67d8a90b833f541ac61 Mon Sep 17 00:00:00 2001 From: "Darrick J. Wong" Date: Thu, 15 Aug 2024 11:56:36 -0700 Subject: [PATCH] xfs: attach rtgroup objects to btree cursors Make it so that we can attach realtime group objects to btree cursors. This will be crucial for enabling rmap btrees in realtime groups. Signed-off-by: Darrick J. Wong --- libxfs/xfs_btree.c | 4 +++- libxfs/xfs_btree.h | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/libxfs/xfs_btree.c b/libxfs/xfs_btree.c index 51ccb5682..0f25703c1 100644 --- a/libxfs/xfs_btree.c +++ b/libxfs/xfs_btree.c @@ -28,6 +28,7 @@ #include "xfile.h" #include "buf_mem.h" #include "xfs_btree_mem.h" +#include "xfs_rtgroup.h" /* * Btree magic numbers. @@ -527,7 +528,8 @@ xfs_btree_del_cursor( xfs_perag_put(cur->bc_ag.pag); break; case XFS_BTREE_TYPE_INODE: - /* nothing to do */ + if (cur->bc_ino.rtg) + xfs_rtgroup_put(cur->bc_ino.rtg); break; case XFS_BTREE_TYPE_MEM: if (cur->bc_mem.pag) diff --git a/libxfs/xfs_btree.h b/libxfs/xfs_btree.h index 1f3aac749..ea7cf4f0e 100644 --- a/libxfs/xfs_btree.h +++ b/libxfs/xfs_btree.h @@ -12,6 +12,7 @@ struct xfs_mount; struct xfs_trans; struct xfs_ifork; struct xfs_perag; +struct xfs_rtgroup; /* * Generic key, ptr and record wrapper structures. @@ -262,6 +263,7 @@ struct xfs_btree_cur union { struct { struct xfs_inode *ip; + struct xfs_rtgroup *rtg; /* if realtime metadata */ short forksize; char whichfork; struct xbtree_ifakeroot *ifake; /* for staging cursor */ -- 2.50.1