[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210906143004.2259141-1-bigeasy@linutronix.de>
Date: Mon, 6 Sep 2021 16:30:02 +0200
From: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
To: linux-kernel@...r.kernel.org
Cc: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>, Will Deacon <will@...nel.org>,
Waiman Long <longman@...hat.com>,
Boqun Feng <boqun.feng@...il.com>,
Thomas Gleixner <tglx@...utronix.de>
Subject: [PATCH 0/2] locking: Provide {rwlock|spin}_is_contended on PREEMPT_RT
The lkp bot reported that rt_rwlock_is_contended() is not used so I
looked closer.
#1 wires up rwlock_is_contended() with rt_rwlock_is_contended() as it
was probably intended. As noted in the patch description, a writer
will always see true based on the current implementation. This could be
solved by looking at the waiters of the rtmutex underneath as done in #2
for spin_lock (which is missing). The helper is not exported and would
be also needed for rwsem_is_contended() because it is using the same
rw_base_is_contended() implementation.
Maybe it is not worth the trouble given that on PREEMPT_RT the rwlock/
spinlock is preemptible so it might be just best to return false and
wait for the scheduler to do its magic.
Sebastian
Powered by blists - more mailing lists