[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201118045345.hpw2fjmd247xpnwl@linux-p48b.lan>
Date: Tue, 17 Nov 2020 20:53:45 -0800
From: Davidlohr Bueso <dave@...olabs.net>
To: Waiman Long <longman@...hat.com>
Cc: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>, Will Deacon <will@...nel.org>,
linux-kernel@...r.kernel.org, Phil Auld <pauld@...hat.com>
Subject: Re: [PATCH 4/5] locking/rwsem: Wake up all waiting readers if
RWSEM_WAKE_READ_OWNED
On Tue, 17 Nov 2020, Waiman Long wrote:
>The rwsem wakeup logic has been modified by commit d3681e269fff
>("locking/rwsem: Wake up almost all readers in wait queue") to wake up
>all readers in the wait queue if the first waiter is a reader. In the
>case of RWSEM_WAKE_READ_OWNED, not all readers can be woken up if the
>first waiter happens to be a writer. Complete the logic by waking up
>all readers even for this case.
While rwsems are certainly not fifo, I'm concerned this would give too
much priority to the readers by having the reader owned lock just skip
over the first waiter. And I'd say most users are more concerned about
the writer side. Basically this would affect the phase-fair properties.
Thanks,
Davidlohr
Powered by blists - more mailing lists