Remove some wrappers that we have in XFS around the read-write semaphore locks. The goal of this cleanup is to remove mrlock_t structure and its mr*() wrapper functions and replace it with native rw_semaphore type and its native calls. Changes in version 8: * Patchset was rebased so it applies cleanly. * The patch 'xfs: replace mrlock_t with rw_semaphores' contains change in xfs_btree.c which transfers ownership of lock so lockdep won't assert (This was reported by Darrick and proposed change fixes this issue). Changes in version 9: *Fixed white space in patch 'xfs: Refactor xfs_isilocked()' *Updated code comments as suggested by djwong (thanks!) in patch: 'xfs: replace mrlock_t with rw_semaphores' Changes in version 10: * Fixed use-after-free in 'xfs: replace mrlock_t with rw_semaphores' (thanks Darrick) * Moved part of refactor of xfs_isilocked() from patch 'xfs: Refactor xfs_isilocked()' to patch 'xfs: replace mrlock_t with rw_semaphores' - to fix compilation error * Typo in comment in 'xfs: replace mrlock_t with rw_semaphores' Changes in version 11: * Dropped typedef xfs_node_t from xfs_isilocked in 'xfs: Refactor xfs_isilocked()' Changes in version 12: xfs: Refactor xfs_isilocked() * Moved shifting lock_flags from xfs_ilocked() to __xfs_rwsem_ilocked() * Changed comment in __xfs_rwsem_islocked() * Removed the arg variable from __xfs_rwsem_islocked() * Removed the extra parentheses around the lock 'defines' xfs: replace mrlock_t with rw_semaphores * Moved shifting lock_flags from xfs_ilocked() to __xfs_rwsem_ilocked() * Updated comment in xfs_btree_split() before the rwsem_release() * Added assert to xfs_isilocked() for IOLOCK flags Changes in version 13: Rebased against 5.10-rc1 as requested by Darrick. The changes Brian asked for: 1st patch - dropped the unnecessary parentheses 4th patch - reduced the comments about passing the lockdep ownership Pavel Reichl (4): xfs: Refactor xfs_isilocked() xfs: clean up whitespace in xfs_isilocked() calls xfs: xfs_isilocked() can only check a single lock type xfs: replace mrlock_t with rw_semaphores fs/xfs/libxfs/xfs_bmap.c | 8 ++-- fs/xfs/libxfs/xfs_btree.c | 16 +++++++ fs/xfs/mrlock.h | 78 -------------------------------- fs/xfs/xfs_file.c | 3 +- fs/xfs/xfs_inode.c | 95 +++++++++++++++++++++++++-------------- fs/xfs/xfs_inode.h | 25 +++++++---- fs/xfs/xfs_iops.c | 4 +- fs/xfs/xfs_linux.h | 2 +- fs/xfs/xfs_qm.c | 2 +- fs/xfs/xfs_super.c | 6 +-- 10 files changed, 106 insertions(+), 133 deletions(-) delete mode 100644 fs/xfs/mrlock.h -- 2.26.2