On Thu, 19 Jan 2023, Davidlohr Bueso wrote:
On Thu, 19 Jan 2023, Mel Gorman wrote:
The race could be closed by moving wait_lock acquisition before the
atomic_sub in rwbase_write_lock() but it expands the scope of the wait_lock
and I'm not sure that's necessary for either correctness or preventing
writer starvation. It's a more straight-forward fix but expanding the
scope of a lock unnecessarily has been unpopular in the past.
Curiously, this is the documented behavior:
* down_write/write_lock()
* 1) Lock rtmutex
* 2) Remove the reader BIAS to force readers into the slow path
Nevermind, this was the rtmutex, not the wait_lock, sorry for the noise.