diff options
Diffstat (limited to 'kernel/locking/rtmutex_common.h')
-rw-r--r-- | kernel/locking/rtmutex_common.h | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/kernel/locking/rtmutex_common.h b/kernel/locking/rtmutex_common.h index 7431a9c86f35..855212501407 100644 --- a/kernel/locking/rtmutex_common.h +++ b/kernel/locking/rtmutex_common.h | |||
@@ -102,6 +102,21 @@ static inline struct task_struct *rt_mutex_owner(struct rt_mutex *lock) | |||
102 | } | 102 | } |
103 | 103 | ||
104 | /* | 104 | /* |
105 | * Constants for rt mutex functions which have a selectable deadlock | ||
106 | * detection. | ||
107 | * | ||
108 | * RT_MUTEX_MIN_CHAINWALK: Stops the lock chain walk when there are | ||
109 | * no further PI adjustments to be made. | ||
110 | * | ||
111 | * RT_MUTEX_FULL_CHAINWALK: Invoke deadlock detection with a full | ||
112 | * walk of the lock chain. | ||
113 | */ | ||
114 | enum rtmutex_chainwalk { | ||
115 | RT_MUTEX_MIN_CHAINWALK, | ||
116 | RT_MUTEX_FULL_CHAINWALK, | ||
117 | }; | ||
118 | |||
119 | /* | ||
105 | * PI-futex support (proxy locking functions, etc.): | 120 | * PI-futex support (proxy locking functions, etc.): |
106 | */ | 121 | */ |
107 | extern struct task_struct *rt_mutex_next_owner(struct rt_mutex *lock); | 122 | extern struct task_struct *rt_mutex_next_owner(struct rt_mutex *lock); |
@@ -111,12 +126,11 @@ extern void rt_mutex_proxy_unlock(struct rt_mutex *lock, | |||
111 | struct task_struct *proxy_owner); | 126 | struct task_struct *proxy_owner); |
112 | extern int rt_mutex_start_proxy_lock(struct rt_mutex *lock, | 127 | extern int rt_mutex_start_proxy_lock(struct rt_mutex *lock, |
113 | struct rt_mutex_waiter *waiter, | 128 | struct rt_mutex_waiter *waiter, |
114 | struct task_struct *task, | 129 | struct task_struct *task); |
115 | int detect_deadlock); | ||
116 | extern int rt_mutex_finish_proxy_lock(struct rt_mutex *lock, | 130 | extern int rt_mutex_finish_proxy_lock(struct rt_mutex *lock, |
117 | struct hrtimer_sleeper *to, | 131 | struct hrtimer_sleeper *to, |
118 | struct rt_mutex_waiter *waiter, | 132 | struct rt_mutex_waiter *waiter); |
119 | int detect_deadlock); | 133 | extern int rt_mutex_timed_futex_lock(struct rt_mutex *l, struct hrtimer_sleeper *to); |
120 | 134 | ||
121 | #ifdef CONFIG_DEBUG_RT_MUTEXES | 135 | #ifdef CONFIG_DEBUG_RT_MUTEXES |
122 | # include "rtmutex-debug.h" | 136 | # include "rtmutex-debug.h" |