Thread (26 messages) 26 messages, 6 authors, 2019-06-19

Re: [RT WARNING] DEBUG_LOCKS_WARN_ON(rt_mutex_owner(lock) != current) with fsfreeze (4.19.25-rt16)

From: Peter Zijlstra <peterz@infradead.org>
Date: 2019-05-03 15:47:02
Also in: lkml

On Fri, May 03, 2019 at 05:37:48PM +0200, Oleg Nesterov wrote:
(And if we change this code to use wait_event(xchg(readers_block) == 0) we
 can remove rw_sem altogether).
That patch you just saw and didn't look at did just that.
The main problem is that this is sub-optimal. We can have a lot of readers
sleeping in __down_read() when percpu_down_write() succeeds, then after
percpu_down_write_non_owner() does up_write() they all will be woken just
to hang in readers_block(). Plus the new readers will need to pass the
lock-check-unlock-schedule path.
Yes, that's gone. Still, write side locking on percpu-rwsem _should_ be
relatively rare and is certainly not a fast path.
Peter, just in case... I see another patch from you but I need to run away
till Monday.
n/p, enjoy the weekend!
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help