Thread (115 messages) 115 messages, 11 authors, 2013-03-05

[PATCH] lglock: add read-preference local-global rwlock

From: Michel Lespinasse <hidden>
Date: 2013-03-05 16:32:18
Also in: linux-arch, linux-pm, linuxppc-dev, lkml, netdev

On Tue, Mar 5, 2013 at 7:54 AM, Lai Jiangshan [off-list ref] wrote:
On 03/03/13 01:06, Oleg Nesterov wrote:
quoted
On 03/02, Michel Lespinasse wrote:
quoted
My version would be slower if it needs to take the
slow path in a reentrant way, but I'm not sure it matters either :)
I'd say, this doesn't matter at all, simply because this can only happen
if we race with the active writer.
It can also happen when interrupted. (still very rarely)

arch_spin_trylock()
        ------->interrupted,
                __this_cpu_read() returns 0.
                arch_spin_trylock() fails
                slowpath, any nested will be slowpath too.
                ...
                ..._read_unlock()
        <-------interrupt
__this_cpu_inc()
....
Yes (and I think this is actually the most likely way for it to happen).

We do need this to work correctly, but I don't expect we need it to be fast.
(could be wrong, this is only my intuition)

-- 
Michel "Walken" Lespinasse
A program is never fully debugged until the last user dies.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help