diff options
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/kernel/mutex.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/firmware/kernel/mutex.c b/firmware/kernel/mutex.c index fc49cc6d09..876b704b51 100644 --- a/firmware/kernel/mutex.c +++ b/firmware/kernel/mutex.c | |||
@@ -103,6 +103,12 @@ void mutex_unlock(struct mutex *m) | |||
103 | } | 103 | } |
104 | 104 | ||
105 | const int oldlevel = disable_irq_save(); | 105 | const int oldlevel = disable_irq_save(); |
106 | /* Tranfer of owning thread is handled in the wakeup protocol | ||
107 | * if priorities are enabled otherwise just set it from the | ||
108 | * queue head. */ | ||
109 | #ifndef HAVE_PRIORITY_SCHEDULING | ||
110 | m->blocker.thread = thread; | ||
111 | #endif | ||
106 | unsigned int result = wakeup_thread(thread, WAKEUP_TRANSFER); | 112 | unsigned int result = wakeup_thread(thread, WAKEUP_TRANSFER); |
107 | restore_irq(oldlevel); | 113 | restore_irq(oldlevel); |
108 | 114 | ||