diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2014-08-08 01:39:29 -0400 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2014-08-08 01:59:59 -0400 |
commit | 981d028c09d10ed867f2f955f58d60b753c64f29 (patch) | |
tree | 0dab835a14c5cb3e740be4e46be93c42aec76bc5 /firmware/kernel/pthread | |
parent | 53d9f2e6a7564e487bdac87f6e28c662e8407458 (diff) | |
download | rockbox-981d028c09d10ed867f2f955f58d60b753c64f29.tar.gz rockbox-981d028c09d10ed867f2f955f58d60b753c64f29.zip |
Do some kernel cleanup
* Seal away private thread and kernel definitions and declarations
into the internal headers in order to better hide internal structure.
* Add a thread-common.c file that keeps shared functions together.
List functions aren't messed with since that's about to be changed to
different ones.
* It is necessary to modify some ARM/PP stuff since GCC was complaining
about constant pool distance and I would rather not force dump it. Just
bl the cache calls in the startup and exit code and let it use veneers
if it must.
* Clean up redundant #includes in relevant areas and reorganize them.
* Expunge useless and dangerous stuff like remove_thread().
Change-Id: I6e22932fad61a9fac30fd1363c071074ee7ab382
Diffstat (limited to 'firmware/kernel/pthread')
-rw-r--r-- | firmware/kernel/pthread/thread.c | 17 |
1 files changed, 0 insertions, 17 deletions
diff --git a/firmware/kernel/pthread/thread.c b/firmware/kernel/pthread/thread.c index a80ce876e8..354a946698 100644 --- a/firmware/kernel/pthread/thread.c +++ b/firmware/kernel/pthread/thread.c | |||
@@ -194,23 +194,6 @@ static void remove_from_list_l(struct thread_entry **list, | |||
194 | thread->l.next->l.prev = thread->l.prev; | 194 | thread->l.next->l.prev = thread->l.prev; |
195 | } | 195 | } |
196 | 196 | ||
197 | unsigned int thread_queue_wake(struct thread_entry **list) | ||
198 | { | ||
199 | unsigned int result = THREAD_NONE; | ||
200 | |||
201 | for (;;) | ||
202 | { | ||
203 | unsigned int rc = wakeup_thread(list); | ||
204 | |||
205 | if (rc == THREAD_NONE) | ||
206 | break; | ||
207 | |||
208 | result |= rc; | ||
209 | } | ||
210 | |||
211 | return result; | ||
212 | } | ||
213 | |||
214 | /* for block_thread(), _w_tmp() and wakeup_thread() t->lock must point | 197 | /* for block_thread(), _w_tmp() and wakeup_thread() t->lock must point |
215 | * to a corelock instance, and this corelock must be held by the caller */ | 198 | * to a corelock instance, and this corelock must be held by the caller */ |
216 | void block_thread_switch(struct thread_entry *t, struct corelock *cl) | 199 | void block_thread_switch(struct thread_entry *t, struct corelock *cl) |