Messages in this thread | | | Date | Fri, 20 May 2016 18:56:53 -0400 | From | Waiman Long <> | Subject | Re: [PATCH v2] locking/rwsem: Add reader-owned state to the owner field |
| |
On 05/18/2016 09:37 PM, Dave Chinner wrote: > On Fri, May 06, 2016 at 08:20:24PM -0400, Waiman Long wrote: >> Currently, it is not possible to determine for sure if a reader >> owns a rwsem by looking at the content of the rwsem data structure. >> This patch adds a new state RWSEM_READER_OWNED to the owner field >> to indicate that readers currently own the lock. > Oh, yes please. This will enable us to get rid of the remaining > mrlock rwsem abstraction we've carried since the days of Irix in > XFS. The only reason the abstraction still exists is that we track > write locks for the purposes of checking for correct inode locking > contexts via ASSERT(xfs_isilocked()) calls....
I think we could add code to export this read/write ownership information. However, that will only work when both CONFIG_RWSEM_XCHGADD_ALGORITHM and CONFIG_RWSEM_SPIN_ON_OWNER are set. So this functionality may not be available in some architectures that use CONFIG_RWSEM_GENERIC_SPINLOCK.
Cheers, Longman
| |