svn commit: r268852 - in vendor-sys/illumos/dist/uts/common/fs/zfs: . sys
Alexander Motin
mav at FreeBSD.org
Sat Jul 19 18:32:32 UTC 2014
On 19.07.2014 13:42, Robert Watson wrote:
> On Fri, 18 Jul 2014, Xin LI wrote:
>
>> Log:
>> 5008 lock contention (rrw_exit) while running a read only load
>> Reviewed by: Matthew Ahrens <matthew.ahrens at delphix.com>
>> Reviewed by: George Wilson <george.wilson at delphix.com>
>> Reviewed by: Alex Reece <alex.reece at delphix.com>
>> Reviewed by: Christopher Siden <christopher.siden at delphix.com>
>> Reviewed by: Richard Yao <ryao at gentoo.org>
>> Reviewed by: Saso Kiselkov <skiselkov.ml at gmail.com>
>> Approved by: Garrett D'Amore <garrett at damore.org>
>>
>> illumos/illumos-gate at c9030f6c93613fe30ee0c16f92b96da7816ac052
>
> Is there an opportunity to use our own read-mostly lock implementation
> here? It should be substantially more scalable, has integration with
> WITNESS, proper priority propagation, etc.
Our rmlock(4) tells: "Writers are permitted to sleep while holding a
read-mostly lock, but readers are not." That is not acceptable for ZFS,
which allocates memory in many places.
Also the rrw locks used there have specific recursion semantics: readers
are allowed to recurse on the lock even when there is waiting writer.
But first read acquisition at the same situation is not allowed. I am
not sure whether out rmlocks can do the same.
--
Alexander Motin
More information about the svn-src-all
mailing list