locking: Adjust spin lock inlining Kconfig options
authorJan Beulich <JBeulich@suse.com>
Mon, 10 Sep 2012 12:01:16 +0000 (13:01 +0100)
committerIngo Molnar <mingo@kernel.org>
Thu, 13 Sep 2012 15:56:13 +0000 (17:56 +0200)
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>
kernel/Kconfig.locks

index 2251882daf53211745a35321589386e265640c07..44511d100eaa89f73c53f0e16828a9f03d7256ac 100644 (file)
@@ -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