Messages in this thread | | | Subject | Re: [rfc] "fair" rw spinlocks | From | Andi Kleen <> | Date | Tue, 24 Nov 2009 21:47:56 +0100 |
| |
Nick Piggin <npiggin@suse.de> writes:
> Hi, > > Last time this issue came up that I could see, I don't think > there were objections to making rwlocks fair, the main > difficulty seemed to be that we allow reentrant read locks > (so a write lock waiting must not block arbitrary read lockers). > > Nowadays our rwlock usage is smaller although still quite a > few, so it would make better sense to do a conversion by > introducing a new lock type and move them over I guess.
You want to do a new lock type for potentially nested rwlocks?
From the basic idea it sounds good, but according to grep the current tree has hundreds of rwlocks all over, and how would you reliably detect whether they are nestable or not?
I assume it's not something that could be easily analyzed at compile time and relying on runtime would seem dangerous.
Basically it sounds like quite a lot of work.
A better plan might be to have new types which are non nestable and only move over audited code to fair rwlocks.
-Andi
-- ak@linux.intel.com -- Speaking for myself only.
| |