locking: Adjust spin lock inlining Kconfig options
Break out the DEBUG_SPINLOCK dependency (requires moving up UNINLINE_SPIN_UNLOCK, as this was the only one in that block not depending on that option). Avoid putting values not selected into the resulting .config - they are not useful for anything, make the output less legible, and just consume space: Use "depends on" rather than directly setting the default from the combined dependency values. Signed-off-by: Jan Beulich <jbeulich@suse.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/r/504DF2AC020000780009A2DF@nat28.tlf.novell.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
parent
d094595078
commit
4fe84fb8c6
1 changed files with 63 additions and 40 deletions
|
@ -87,6 +87,9 @@ config ARCH_INLINE_WRITE_UNLOCK_IRQ
|
|||
config ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
|
||||
bool
|
||||
|
||||
config UNINLINE_SPIN_UNLOCK
|
||||
bool
|
||||
|
||||
#
|
||||
# lock_* functions are inlined when:
|
||||
# - DEBUG_SPINLOCK=n and GENERIC_LOCKBREAK=n and ARCH_INLINE_*LOCK=y
|
||||
|
@ -103,100 +106,120 @@ config ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
|
|||
# - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y
|
||||
#
|
||||
|
||||
if !DEBUG_SPINLOCK
|
||||
|
||||
config INLINE_SPIN_TRYLOCK
|
||||
def_bool !DEBUG_SPINLOCK && ARCH_INLINE_SPIN_TRYLOCK
|
||||
def_bool y
|
||||
depends on ARCH_INLINE_SPIN_TRYLOCK
|
||||
|
||||
config INLINE_SPIN_TRYLOCK_BH
|
||||
def_bool !DEBUG_SPINLOCK && ARCH_INLINE_SPIN_TRYLOCK_BH
|
||||
def_bool y
|
||||
depends on ARCH_INLINE_SPIN_TRYLOCK_BH
|
||||
|
||||
config INLINE_SPIN_LOCK
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK
|
||||
|
||||
config INLINE_SPIN_LOCK_BH
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
|
||||
ARCH_INLINE_SPIN_LOCK_BH
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_BH
|
||||
|
||||
config INLINE_SPIN_LOCK_IRQ
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
|
||||
ARCH_INLINE_SPIN_LOCK_IRQ
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_IRQ
|
||||
|
||||
config INLINE_SPIN_LOCK_IRQSAVE
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
|
||||
ARCH_INLINE_SPIN_LOCK_IRQSAVE
|
||||
|
||||
config UNINLINE_SPIN_UNLOCK
|
||||
bool
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_IRQSAVE
|
||||
|
||||
config INLINE_SPIN_UNLOCK_BH
|
||||
def_bool !DEBUG_SPINLOCK && ARCH_INLINE_SPIN_UNLOCK_BH
|
||||
def_bool y
|
||||
depends on ARCH_INLINE_SPIN_UNLOCK_BH
|
||||
|
||||
config INLINE_SPIN_UNLOCK_IRQ
|
||||
def_bool !DEBUG_SPINLOCK && (!PREEMPT || ARCH_INLINE_SPIN_UNLOCK_BH)
|
||||
def_bool y
|
||||
depends on !PREEMPT || ARCH_INLINE_SPIN_UNLOCK_BH
|
||||
|
||||
config INLINE_SPIN_UNLOCK_IRQRESTORE
|
||||
def_bool !DEBUG_SPINLOCK && ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
|
||||
def_bool y
|
||||
depends on ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
|
||||
|
||||
|
||||
config INLINE_READ_TRYLOCK
|
||||
def_bool !DEBUG_SPINLOCK && ARCH_INLINE_READ_TRYLOCK
|
||||
def_bool y
|
||||
depends on ARCH_INLINE_READ_TRYLOCK
|
||||
|
||||
config INLINE_READ_LOCK
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK
|
||||
|
||||
config INLINE_READ_LOCK_BH
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
|
||||
ARCH_INLINE_READ_LOCK_BH
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_BH
|
||||
|
||||
config INLINE_READ_LOCK_IRQ
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
|
||||
ARCH_INLINE_READ_LOCK_IRQ
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_IRQ
|
||||
|
||||
config INLINE_READ_LOCK_IRQSAVE
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
|
||||
ARCH_INLINE_READ_LOCK_IRQSAVE
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_IRQSAVE
|
||||
|
||||
config INLINE_READ_UNLOCK
|
||||
def_bool !DEBUG_SPINLOCK && (!PREEMPT || ARCH_INLINE_READ_UNLOCK)
|
||||
def_bool y
|
||||
depends on !PREEMPT || ARCH_INLINE_READ_UNLOCK
|
||||
|
||||
config INLINE_READ_UNLOCK_BH
|
||||
def_bool !DEBUG_SPINLOCK && ARCH_INLINE_READ_UNLOCK_BH
|
||||
def_bool y
|
||||
depends on ARCH_INLINE_READ_UNLOCK_BH
|
||||
|
||||
config INLINE_READ_UNLOCK_IRQ
|
||||
def_bool !DEBUG_SPINLOCK && (!PREEMPT || ARCH_INLINE_READ_UNLOCK_BH)
|
||||
def_bool y
|
||||
depends on !PREEMPT || ARCH_INLINE_READ_UNLOCK_BH
|
||||
|
||||
config INLINE_READ_UNLOCK_IRQRESTORE
|
||||
def_bool !DEBUG_SPINLOCK && ARCH_INLINE_READ_UNLOCK_IRQRESTORE
|
||||
def_bool y
|
||||
depends on ARCH_INLINE_READ_UNLOCK_IRQRESTORE
|
||||
|
||||
|
||||
config INLINE_WRITE_TRYLOCK
|
||||
def_bool !DEBUG_SPINLOCK && ARCH_INLINE_WRITE_TRYLOCK
|
||||
def_bool y
|
||||
depends on ARCH_INLINE_WRITE_TRYLOCK
|
||||
|
||||
config INLINE_WRITE_LOCK
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK
|
||||
|
||||
config INLINE_WRITE_LOCK_BH
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
|
||||
ARCH_INLINE_WRITE_LOCK_BH
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_BH
|
||||
|
||||
config INLINE_WRITE_LOCK_IRQ
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
|
||||
ARCH_INLINE_WRITE_LOCK_IRQ
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_IRQ
|
||||
|
||||
config INLINE_WRITE_LOCK_IRQSAVE
|
||||
def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
|
||||
ARCH_INLINE_WRITE_LOCK_IRQSAVE
|
||||
def_bool y
|
||||
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_IRQSAVE
|
||||
|
||||
config INLINE_WRITE_UNLOCK
|
||||
def_bool !DEBUG_SPINLOCK && (!PREEMPT || ARCH_INLINE_WRITE_UNLOCK)
|
||||
def_bool y
|
||||
depends on !PREEMPT || ARCH_INLINE_WRITE_UNLOCK
|
||||
|
||||
config INLINE_WRITE_UNLOCK_BH
|
||||
def_bool !DEBUG_SPINLOCK && ARCH_INLINE_WRITE_UNLOCK_BH
|
||||
def_bool y
|
||||
depends on ARCH_INLINE_WRITE_UNLOCK_BH
|
||||
|
||||
config INLINE_WRITE_UNLOCK_IRQ
|
||||
def_bool !DEBUG_SPINLOCK && (!PREEMPT || ARCH_INLINE_WRITE_UNLOCK_BH)
|
||||
def_bool y
|
||||
depends on !PREEMPT || ARCH_INLINE_WRITE_UNLOCK_BH
|
||||
|
||||
config INLINE_WRITE_UNLOCK_IRQRESTORE
|
||||
def_bool !DEBUG_SPINLOCK && ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
|
||||
def_bool y
|
||||
depends on ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
|
||||
|
||||
endif
|
||||
|
||||
config MUTEX_SPIN_ON_OWNER
|
||||
def_bool SMP && !DEBUG_MUTEXES
|
||||
def_bool y
|
||||
depends on SMP && !DEBUG_MUTEXES
|
||||
|
|
Loading…
Reference in a new issue