aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/locking/rtmutex.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2015-03-13 14:20:46 +0100
committerIngo Molnar <mingo@kernel.org>2015-03-13 14:21:04 +0100
commit56544d29c3a0e383c0d819fefc9570b2803db193 (patch)
tree4366fc0ba3f5115b8c1c9d171fa245d86e5415d0 /kernel/locking/rtmutex.c
parentx86/build/defconfig: Enable USB_EHCI_TT_NEWSCHED=y (diff)
parentLinux 4.0-rc3 (diff)
downloadlinux-dev-56544d29c3a0e383c0d819fefc9570b2803db193.tar.xz
linux-dev-56544d29c3a0e383c0d819fefc9570b2803db193.zip
Merge tag 'v4.0-rc3' into x86/build, to refresh an older tree before applying new changes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/locking/rtmutex.c')
-rw-r--r--kernel/locking/rtmutex.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
index 3059bc2f022d..6357265a31ad 100644
--- a/kernel/locking/rtmutex.c
+++ b/kernel/locking/rtmutex.c
@@ -1193,7 +1193,9 @@ rt_mutex_slowlock(struct rt_mutex *lock, int state,
ret = __rt_mutex_slowlock(lock, state, timeout, &waiter);
if (unlikely(ret)) {
- remove_waiter(lock, &waiter);
+ __set_current_state(TASK_RUNNING);
+ if (rt_mutex_has_waiters(lock))
+ remove_waiter(lock, &waiter);
rt_mutex_handle_deadlock(ret, chwalk, &waiter);
}