diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2014-06-10 22:53:40 +0200 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2014-06-21 22:05:30 +0200 |
commit | 88f2b4c15e561bb5c28709d666364f273bf54b98 (patch) | |
tree | 7afc35714df46561b18b78bb39e70d7cbaafabe3 /Kconfig | |
parent | Merge branch 'locking/urgent' into locking/core (diff) | |
download | linux-88f2b4c15e561bb5c28709d666364f273bf54b98.tar.xz linux-88f2b4c15e561bb5c28709d666364f273bf54b98.zip |
rtmutex: Simplify rtmutex_slowtrylock()
Oleg noticed that rtmutex_slowtrylock() has a pointless check for
rt_mutex_owner(lock) != current.
To avoid calling try_to_take_rtmutex() we really want to check whether
the lock has an owner at all or whether the trylock failed because the
owner is NULL, but the RT_MUTEX_HAS_WAITERS bit is set. This covers
the lock is owned by caller situation as well.
We can actually do this check lockless. trylock is taking a chance
whether we take lock->wait_lock to do the check or not.
Add comments to the function while at it.
Reported-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Steven Rostedt <rostedt@goodmis.org>
Reviewed-by: Lai Jiangshan <laijs@cn.fujitsu.com>
Diffstat (limited to 'Kconfig')
0 files changed, 0 insertions, 0 deletions