Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6
[firefly-linux-kernel-4.4.55.git] / include / asm-generic / mutex-null.h
1 /*
2  * asm-generic/mutex-null.h
3  *
4  * Generic implementation of the mutex fastpath, based on NOP :-)
5  *
6  * This is used by the mutex-debugging infrastructure, but it can also
7  * be used by architectures that (for whatever reason) want to use the
8  * spinlock based slowpath.
9  */
10 #ifndef _ASM_GENERIC_MUTEX_NULL_H
11 #define _ASM_GENERIC_MUTEX_NULL_H
12
13 /* extra parameter only needed for mutex debugging: */
14 #ifndef __IP__
15 # define __IP__
16 #endif
17
18 #define __mutex_fastpath_lock(count, fail_fn)         fail_fn(count __RET_IP__)
19 #define __mutex_fastpath_lock_retval(count, fail_fn)  fail_fn(count __RET_IP__)
20 #define __mutex_fastpath_unlock(count, fail_fn)       fail_fn(count __RET_IP__)
21 #define __mutex_fastpath_trylock(count, fail_fn)      fail_fn(count)
22 #define __mutex_slowpath_needs_to_unlock()            1
23
24 #endif