summaryrefslogtreecommitdiff
path: root/fs/xfs/libxfs/xfs_bmap.c
diff options
context:
space:
mode:
authorDarrick J. Wong <djwong@kernel.org>2021-09-01 11:15:55 -0700
committerDarrick J. Wong <djwong@kernel.org>2021-09-17 18:55:11 -0700
commitaa640160d2f9c05bfbfce4cb15b479516e804830 (patch)
tree71e31d4c1671dd66ff7decbaa3db2a453e4cac50 /fs/xfs/libxfs/xfs_bmap.c
parentb0a580dd65f1595d915a1612180c622d2461e2cd (diff)
xfs: refactor realtime inode lockingrefactor-rt-locking_2021-09-17
Refactor realtime metadata inode locking so that we can get some sense here. Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Diffstat (limited to 'fs/xfs/libxfs/xfs_bmap.c')
-rw-r--r--fs/xfs/libxfs/xfs_bmap.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/fs/xfs/libxfs/xfs_bmap.c b/fs/xfs/libxfs/xfs_bmap.c
index cd97288f6abc..812ab8d9fac1 100644
--- a/fs/xfs/libxfs/xfs_bmap.c
+++ b/fs/xfs/libxfs/xfs_bmap.c
@@ -5443,12 +5443,9 @@ __xfs_bunmapi(
if (isrt) {
/*
- * Synchronize by locking the bitmap inode.
+ * Synchronize by locking the realtime bitmap.
*/
- xfs_ilock(mp->m_rbmip, XFS_ILOCK_EXCL|XFS_ILOCK_RTBITMAP);
- xfs_trans_ijoin(tp, mp->m_rbmip, XFS_ILOCK_EXCL);
- xfs_ilock(mp->m_rsumip, XFS_ILOCK_EXCL|XFS_ILOCK_RTSUM);
- xfs_trans_ijoin(tp, mp->m_rsumip, XFS_ILOCK_EXCL);
+ xfs_rtlock(tp, mp, XFS_RTLOCK_ALLOC);
}
extno = 0;