aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_rtalloc.c
diff options
context:
space:
mode:
authorChristoph Hellwig <[email protected]>2024-08-30 22:36:59 +0000
committerDarrick J. Wong <[email protected]>2024-09-01 15:58:19 +0000
commit0a59e4f3e1670bc49d60e1bd1a9b19ca156ae9cb (patch)
tree00b311b7d64f6b4b63181359757f3db1ca022471 /fs/xfs/xfs_rtalloc.c
parentxfs: factor out rtbitmap/summary initialization helpers (diff)
downloadkernel-0a59e4f3e1670bc49d60e1bd1a9b19ca156ae9cb.tar.gz
kernel-0a59e4f3e1670bc49d60e1bd1a9b19ca156ae9cb.zip
xfs: push transaction join out of xfs_rtbitmap_lock and xfs_rtgroup_lock
To prepare for being able to join an already locked rtbitmap inode to a transaction split out separate helpers for joining the transaction from the locking helpers. Signed-off-by: Christoph Hellwig <[email protected]> Reviewed-by: Darrick J. Wong <[email protected]> Signed-off-by: Darrick J. Wong <[email protected]>
Diffstat (limited to 'fs/xfs/xfs_rtalloc.c')
-rw-r--r--fs/xfs/xfs_rtalloc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/xfs/xfs_rtalloc.c b/fs/xfs/xfs_rtalloc.c
index 114807cd80ba..d290749b0304 100644
--- a/fs/xfs/xfs_rtalloc.c
+++ b/fs/xfs/xfs_rtalloc.c
@@ -739,7 +739,8 @@ xfs_growfs_rt_bmblock(
goto out_free;
nargs.tp = args.tp;
- xfs_rtbitmap_lock(args.tp, mp);
+ xfs_rtbitmap_lock(mp);
+ xfs_rtbitmap_trans_join(args.tp);
/*
* Update the bitmap inode's size ondisk and incore. We need to update
@@ -1313,7 +1314,8 @@ retry:
* Lock out modifications to both the RT bitmap and summary inodes
*/
if (!rtlocked) {
- xfs_rtbitmap_lock(ap->tp, mp);
+ xfs_rtbitmap_lock(mp);
+ xfs_rtbitmap_trans_join(ap->tp);
rtlocked = true;
}