summaryrefslogtreecommitdiff
path: root/fs/xfs/xfs_bmap_util.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/xfs_bmap_util.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/xfs_bmap_util.c')
-rw-r--r--fs/xfs/xfs_bmap_util.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/fs/xfs/xfs_bmap_util.c b/fs/xfs/xfs_bmap_util.c
index f43f1d434fe2..facddb293efa 100644
--- a/fs/xfs/xfs_bmap_util.c
+++ b/fs/xfs/xfs_bmap_util.c
@@ -133,10 +133,7 @@ retry:
* Lock out modifications to both the RT bitmap and summary inodes
*/
if (!rtlocked) {
- xfs_ilock(mp->m_rbmip, XFS_ILOCK_EXCL|XFS_ILOCK_RTBITMAP);
- xfs_trans_ijoin(ap->tp, mp->m_rbmip, XFS_ILOCK_EXCL);
- xfs_ilock(mp->m_rsumip, XFS_ILOCK_EXCL|XFS_ILOCK_RTSUM);
- xfs_trans_ijoin(ap->tp, mp->m_rsumip, XFS_ILOCK_EXCL);
+ xfs_rtlock(ap->tp, mp, XFS_RTLOCK_ALLOC);
rtlocked = true;
}