2009-11-09 18:21:34 +03:00
#
# The ARCH_INLINE foo is necessary because select ignores "depends on"
#
config ARCH_INLINE_SPIN_TRYLOCK
bool
config ARCH_INLINE_SPIN_TRYLOCK_BH
bool
config ARCH_INLINE_SPIN_LOCK
bool
config ARCH_INLINE_SPIN_LOCK_BH
bool
config ARCH_INLINE_SPIN_LOCK_IRQ
bool
config ARCH_INLINE_SPIN_LOCK_IRQSAVE
bool
config ARCH_INLINE_SPIN_UNLOCK
bool
config ARCH_INLINE_SPIN_UNLOCK_BH
bool
config ARCH_INLINE_SPIN_UNLOCK_IRQ
bool
config ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
bool
config ARCH_INLINE_READ_TRYLOCK
bool
config ARCH_INLINE_READ_LOCK
bool
config ARCH_INLINE_READ_LOCK_BH
bool
config ARCH_INLINE_READ_LOCK_IRQ
bool
config ARCH_INLINE_READ_LOCK_IRQSAVE
bool
config ARCH_INLINE_READ_UNLOCK
bool
config ARCH_INLINE_READ_UNLOCK_BH
bool
config ARCH_INLINE_READ_UNLOCK_IRQ
bool
config ARCH_INLINE_READ_UNLOCK_IRQRESTORE
bool
config ARCH_INLINE_WRITE_TRYLOCK
bool
config ARCH_INLINE_WRITE_LOCK
bool
config ARCH_INLINE_WRITE_LOCK_BH
bool
config ARCH_INLINE_WRITE_LOCK_IRQ
bool
config ARCH_INLINE_WRITE_LOCK_IRQSAVE
bool
config ARCH_INLINE_WRITE_UNLOCK
bool
config ARCH_INLINE_WRITE_UNLOCK_BH
bool
config ARCH_INLINE_WRITE_UNLOCK_IRQ
bool
config ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
bool
2012-09-10 16:01:16 +04:00
config UNINLINE_SPIN_UNLOCK
bool
2009-11-09 18:21:34 +03:00
#
# lock_* functions are inlined when:
# - DEBUG_SPINLOCK=n and GENERIC_LOCKBREAK=n and ARCH_INLINE_*LOCK=y
#
# trylock_* functions are inlined when:
# - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y
#
# unlock and unlock_irq functions are inlined when:
# - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y
# or
# - DEBUG_SPINLOCK=n and PREEMPT=n
#
# unlock_bh and unlock_irqrestore functions are inlined when:
# - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y
#
2012-09-10 16:01:16 +04:00
if !DEBUG_SPINLOCK
2009-11-09 18:21:34 +03:00
config INLINE_SPIN_TRYLOCK
2012-09-10 16:01:16 +04:00
def_bool y
depends on ARCH_INLINE_SPIN_TRYLOCK
2009-11-09 18:21:34 +03:00
config INLINE_SPIN_TRYLOCK_BH
2012-09-10 16:01:16 +04:00
def_bool y
depends on ARCH_INLINE_SPIN_TRYLOCK_BH
2009-11-09 18:21:34 +03:00
config INLINE_SPIN_LOCK
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK
2009-11-09 18:21:34 +03:00
config INLINE_SPIN_LOCK_BH
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_BH
2009-11-09 18:21:34 +03:00
config INLINE_SPIN_LOCK_IRQ
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_IRQ
2009-11-09 18:21:34 +03:00
config INLINE_SPIN_LOCK_IRQSAVE
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_IRQSAVE
2009-11-09 18:21:34 +03:00
config INLINE_SPIN_UNLOCK_BH
2012-09-10 16:01:16 +04:00
def_bool y
depends on ARCH_INLINE_SPIN_UNLOCK_BH
2009-11-09 18:21:34 +03:00
config INLINE_SPIN_UNLOCK_IRQ
2012-09-10 16:01:16 +04:00
def_bool y
2013-05-17 12:51:33 +04:00
depends on !PREEMPT || ARCH_INLINE_SPIN_UNLOCK_IRQ
2009-11-09 18:21:34 +03:00
config INLINE_SPIN_UNLOCK_IRQRESTORE
2012-09-10 16:01:16 +04:00
def_bool y
depends on ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
2009-11-09 18:21:34 +03:00
config INLINE_READ_TRYLOCK
2012-09-10 16:01:16 +04:00
def_bool y
depends on ARCH_INLINE_READ_TRYLOCK
2009-11-09 18:21:34 +03:00
config INLINE_READ_LOCK
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK
2009-11-09 18:21:34 +03:00
config INLINE_READ_LOCK_BH
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_BH
2009-11-09 18:21:34 +03:00
config INLINE_READ_LOCK_IRQ
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_IRQ
2009-11-09 18:21:34 +03:00
config INLINE_READ_LOCK_IRQSAVE
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_IRQSAVE
2009-11-09 18:21:34 +03:00
config INLINE_READ_UNLOCK
2012-09-10 16:01:16 +04:00
def_bool y
depends on !PREEMPT || ARCH_INLINE_READ_UNLOCK
2009-11-09 18:21:34 +03:00
config INLINE_READ_UNLOCK_BH
2012-09-10 16:01:16 +04:00
def_bool y
depends on ARCH_INLINE_READ_UNLOCK_BH
2009-11-09 18:21:34 +03:00
config INLINE_READ_UNLOCK_IRQ
2012-09-10 16:01:16 +04:00
def_bool y
2013-05-17 12:51:33 +04:00
depends on !PREEMPT || ARCH_INLINE_READ_UNLOCK_IRQ
2009-11-09 18:21:34 +03:00
config INLINE_READ_UNLOCK_IRQRESTORE
2012-09-10 16:01:16 +04:00
def_bool y
depends on ARCH_INLINE_READ_UNLOCK_IRQRESTORE
2009-11-09 18:21:34 +03:00
config INLINE_WRITE_TRYLOCK
2012-09-10 16:01:16 +04:00
def_bool y
depends on ARCH_INLINE_WRITE_TRYLOCK
2009-11-09 18:21:34 +03:00
config INLINE_WRITE_LOCK
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK
2009-11-09 18:21:34 +03:00
config INLINE_WRITE_LOCK_BH
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_BH
2009-11-09 18:21:34 +03:00
config INLINE_WRITE_LOCK_IRQ
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_IRQ
2009-11-09 18:21:34 +03:00
config INLINE_WRITE_LOCK_IRQSAVE
2012-09-10 16:01:16 +04:00
def_bool y
depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_IRQSAVE
2009-11-09 18:21:34 +03:00
config INLINE_WRITE_UNLOCK
2012-09-10 16:01:16 +04:00
def_bool y
depends on !PREEMPT || ARCH_INLINE_WRITE_UNLOCK
2009-11-09 18:21:34 +03:00
config INLINE_WRITE_UNLOCK_BH
2012-09-10 16:01:16 +04:00
def_bool y
depends on ARCH_INLINE_WRITE_UNLOCK_BH
2009-11-09 18:21:34 +03:00
config INLINE_WRITE_UNLOCK_IRQ
2012-09-10 16:01:16 +04:00
def_bool y
2013-05-17 12:51:33 +04:00
depends on !PREEMPT || ARCH_INLINE_WRITE_UNLOCK_IRQ
2009-11-09 18:21:34 +03:00
config INLINE_WRITE_UNLOCK_IRQRESTORE
2012-09-10 16:01:16 +04:00
def_bool y
depends on ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
endif
2009-12-02 22:49:16 +03:00
2014-06-06 21:53:16 +04:00
config ARCH_SUPPORTS_ATOMIC_RMW
bool
2009-12-02 22:49:16 +03:00
config MUTEX_SPIN_ON_OWNER
2012-09-10 16:01:16 +04:00
def_bool y
2016-08-23 14:45:15 +03:00
depends on SMP && ARCH_SUPPORTS_ATOMIC_RMW
2014-02-03 16:18:49 +04:00
2014-07-12 01:00:06 +04:00
config RWSEM_SPIN_ON_OWNER
def_bool y
depends on SMP && RWSEM_XCHGADD_ALGORITHM && ARCH_SUPPORTS_ATOMIC_RMW
2015-01-06 22:45:07 +03:00
config LOCK_SPIN_ON_OWNER
def_bool y
depends on MUTEX_SPIN_ON_OWNER || RWSEM_SPIN_ON_OWNER
2015-05-11 10:47:23 +03:00
config ARCH_USE_QUEUED_SPINLOCKS
2015-04-24 21:56:30 +03:00
bool
2015-05-11 10:47:23 +03:00
config QUEUED_SPINLOCKS
def_bool y if ARCH_USE_QUEUED_SPINLOCKS
2015-04-24 21:56:40 +03:00
depends on SMP
2015-04-24 21:56:30 +03:00
2015-05-11 20:57:11 +03:00
config ARCH_USE_QUEUED_RWLOCKS
2014-02-03 16:18:49 +04:00
bool
2015-05-11 20:57:11 +03:00
config QUEUED_RWLOCKS
def_bool y if ARCH_USE_QUEUED_RWLOCKS
2014-02-03 16:18:49 +04:00
depends on SMP