aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/locking
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2018-04-27 05:40:13 -0400
committerIngo Molnar <mingo@kernel.org>2018-04-27 06:55:22 -0400
commit3bea9adc96842b8a7345c7fb202c16ae9c8d5b25 (patch)
tree3797bf32be475dd99100a9f4d7b725923ee8f9f3 /kernel/locking
parentbaa8c6ddf7be33f2b0ddeb68906d668caf646baa (diff)
locking/qspinlock: Remove duplicate clear_pending() function from PV code
The native clear_pending() function is identical to the PV version, so the latter can simply be removed. This fixes the build for systems with >= 16K CPUs using the PV lock implementation. Reported-by: Waiman Long <longman@redhat.com> Signed-off-by: Will Deacon <will.deacon@arm.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: boqun.feng@gmail.com Cc: linux-arm-kernel@lists.infradead.org Cc: paulmck@linux.vnet.ibm.com Link: http://lkml.kernel.org/r/20180427101619.GB21705@arm.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/locking')
-rw-r--r--kernel/locking/qspinlock_paravirt.h5
1 files changed, 0 insertions, 5 deletions
diff --git a/kernel/locking/qspinlock_paravirt.h b/kernel/locking/qspinlock_paravirt.h
index 25730b2ac022..5a0cf5f9008c 100644
--- a/kernel/locking/qspinlock_paravirt.h
+++ b/kernel/locking/qspinlock_paravirt.h
@@ -130,11 +130,6 @@ static __always_inline void set_pending(struct qspinlock *lock)
130 atomic_or(_Q_PENDING_VAL, &lock->val); 130 atomic_or(_Q_PENDING_VAL, &lock->val);
131} 131}
132 132
133static __always_inline void clear_pending(struct qspinlock *lock)
134{
135 atomic_andnot(_Q_PENDING_VAL, &lock->val);
136}
137
138static __always_inline int trylock_clear_pending(struct qspinlock *lock) 133static __always_inline int trylock_clear_pending(struct qspinlock *lock)
139{ 134{
140 int val = atomic_read(&lock->val); 135 int val = atomic_read(&lock->val);