diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2014-08-06 02:10:14 -0400 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2014-08-06 02:27:49 -0400 |
commit | 81ffd9bfeee6aca65f507a46c8123b47ca6e2803 (patch) | |
tree | e9eb535dbc71f35bce7519d7a6a063e4a683ba55 /firmware/kernel/thread.c | |
parent | e7e302f2559ec2c8878e5b5205755900215196b3 (diff) | |
download | rockbox-81ffd9bfeee6aca65f507a46c8123b47ca6e2803.tar.gz rockbox-81ffd9bfeee6aca65f507a46c8123b47ca6e2803.zip |
Fix some stuff for no priority and
thread_queue_wake() doesn't need the 2nd parameter. The original purpose
for it never came to be.
Non priority version mrsw_writer_wakeup_readers was left improperly
finished. Get that back into line.
Change-Id: Ic613a2479f3cc14dc7c761517670eb15178da9f5
Diffstat (limited to 'firmware/kernel/thread.c')
-rw-r--r-- | firmware/kernel/thread.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/firmware/kernel/thread.c b/firmware/kernel/thread.c index 0a47f97e93..9855cc3c84 100644 --- a/firmware/kernel/thread.c +++ b/firmware/kernel/thread.c | |||
@@ -1527,10 +1527,8 @@ void block_thread(struct thread_entry *current, int timeout) | |||
1527 | * INTERNAL: Intended for use by kernel objects and not for programs. | 1527 | * INTERNAL: Intended for use by kernel objects and not for programs. |
1528 | *--------------------------------------------------------------------------- | 1528 | *--------------------------------------------------------------------------- |
1529 | */ | 1529 | */ |
1530 | unsigned int thread_queue_wake(struct thread_entry **list, | 1530 | unsigned int thread_queue_wake(struct thread_entry **list) |
1531 | volatile int *count) | ||
1532 | { | 1531 | { |
1533 | int num = 0; | ||
1534 | unsigned result = THREAD_NONE; | 1532 | unsigned result = THREAD_NONE; |
1535 | 1533 | ||
1536 | for (;;) | 1534 | for (;;) |
@@ -1541,12 +1539,8 @@ unsigned int thread_queue_wake(struct thread_entry **list, | |||
1541 | break; /* No more threads */ | 1539 | break; /* No more threads */ |
1542 | 1540 | ||
1543 | result |= rc; | 1541 | result |= rc; |
1544 | num++; | ||
1545 | } | 1542 | } |
1546 | 1543 | ||
1547 | if (count) | ||
1548 | *count = num; | ||
1549 | |||
1550 | return result; | 1544 | return result; |
1551 | } | 1545 | } |
1552 | 1546 | ||
@@ -1821,7 +1815,7 @@ static inline void thread_final_exit(struct thread_entry *current) | |||
1821 | * execution except the slot itself. */ | 1815 | * execution except the slot itself. */ |
1822 | 1816 | ||
1823 | /* Signal this thread */ | 1817 | /* Signal this thread */ |
1824 | thread_queue_wake(¤t->queue, NULL); | 1818 | thread_queue_wake(¤t->queue); |
1825 | corelock_unlock(¤t->waiter_cl); | 1819 | corelock_unlock(¤t->waiter_cl); |
1826 | switch_thread(); | 1820 | switch_thread(); |
1827 | /* This should never and must never be reached - if it is, the | 1821 | /* This should never and must never be reached - if it is, the |