diff options
author | Peter Zijlstra <peterz@infradead.org> | 2017-01-17 16:06:09 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2017-01-30 11:42:59 +0100 |
commit | b9c16a0e1f733c97e48798b2a9362c485bb3b731 (patch) | |
tree | be96b0e158eca9af36f084b6344900212f4c58ba /kernel/locking/mutex.h | |
parent | 4009f4b3a9d8b74547269f293e6a920adf278996 (diff) | |
download | lwn-b9c16a0e1f733c97e48798b2a9362c485bb3b731.tar.gz lwn-b9c16a0e1f733c97e48798b2a9362c485bb3b731.zip |
locking/mutex: Fix lockdep_assert_held() fail
In commit:
659cf9f5824a ("locking/ww_mutex: Optimize ww-mutexes by waking at most one waiter for backoff when acquiring the lock")
I replaced a comment with a lockdep_assert_held(). However it turns out
we hide that lock from lockdep for hysterical raisins, which results
in the assertion always firing.
Remove the old debug code as lockdep will easily spot the abuse it was
meant to catch, which will make the lock visible to lockdep and make
the assertion work as intended.
Reported-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Nicolai Haehnle <Nicolai.Haehnle@amd.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Fixes: 659cf9f5824a ("locking/ww_mutex: Optimize ww-mutexes by waking at most one waiter for backoff when acquiring the lock")
Link: http://lkml.kernel.org/r/20170117150609.GB32474@worktop
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/locking/mutex.h')
-rw-r--r-- | kernel/locking/mutex.h | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/kernel/locking/mutex.h b/kernel/locking/mutex.h index 4410a4af42a3..6ebc1902f779 100644 --- a/kernel/locking/mutex.h +++ b/kernel/locking/mutex.h @@ -9,10 +9,6 @@ * !CONFIG_DEBUG_MUTEXES case. Most of them are NOPs: */ -#define spin_lock_mutex(lock, flags) \ - do { spin_lock(lock); (void)(flags); } while (0) -#define spin_unlock_mutex(lock, flags) \ - do { spin_unlock(lock); (void)(flags); } while (0) #define mutex_remove_waiter(lock, waiter, task) \ __list_del((waiter)->list.prev, (waiter)->list.next) |