summaryrefslogtreecommitdiff
path: root/firmware/kernel/semaphore.c
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2017-01-21 14:18:37 -0500
committerMichael Sevakis <jethead71@rockbox.org>2017-01-21 14:25:52 -0500
commit3e738661108fb2a8e3474c6336c2a5c2668f82b6 (patch)
treec3c7bc51c4329ab6652fd2550a241a56bbafda1f /firmware/kernel/semaphore.c
parentda464572318a34f4791ccb419acbf0a470b810e6 (diff)
downloadrockbox-3e738661108fb2a8e3474c6336c2a5c2668f82b6.tar.gz
rockbox-3e738661108fb2a8e3474c6336c2a5c2668f82b6.zip
Add CPU mode asserts to kernel on blocking functions.
This scourge finds it's way back in far too often. Right now, only defined for ARM. Have fun! Change-Id: Ib21be09ebf71dec10dc652a7a664779251f49644
Diffstat (limited to 'firmware/kernel/semaphore.c')
-rw-r--r--firmware/kernel/semaphore.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/firmware/kernel/semaphore.c b/firmware/kernel/semaphore.c
index 5e9e46798f..6b58fa3d8a 100644
--- a/firmware/kernel/semaphore.c
+++ b/firmware/kernel/semaphore.c
@@ -57,6 +57,8 @@ int semaphore_wait(struct semaphore *s, int timeout)
57 } 57 }
58 else if(timeout != 0) 58 else if(timeout != 0)
59 { 59 {
60 ASSERT_CPU_MODE(CPU_MODE_THREAD_CONTEXT, oldlevel);
61
60 /* too many waits - block until count is upped... */ 62 /* too many waits - block until count is upped... */
61 struct thread_entry *current = __running_self_entry(); 63 struct thread_entry *current = __running_self_entry();
62 64