Small size optimization to the scheduler timeout code.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@814 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
parent
d9ff829a71
commit
e54758e2d3
|
@ -60,7 +60,7 @@ Settings: SYSCLK=72, ACR=0x12 (2 wait states)
|
|||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 11.2 (Benchmark, context switch #2, empty ready list)
|
||||
--- Score : 178663 msgs/S, 357326 ctxswc/S
|
||||
--- Score : 178664 msgs/S, 357328 ctxswc/S
|
||||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 11.3 (Benchmark, context switch #3, 4 threads in ready list)
|
||||
|
@ -72,11 +72,11 @@ Settings: SYSCLK=72, ACR=0x12 (2 wait states)
|
|||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 11.5 (Benchmark, threads creation/termination, optimal)
|
||||
--- Score : 210633 threads/S
|
||||
--- Score : 210632 threads/S
|
||||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 11.6 (Benchmark, mass reschedulation, 5 threads)
|
||||
--- Score : 55552 reschedulations/S, 333312 ctxswc/S
|
||||
--- Score : 55551 reschedulations/S, 333306 ctxswc/S
|
||||
--- Result: SUCCESS
|
||||
---------------------------------------------------------------------------
|
||||
--- Test Case 11.7 (Benchmark, I/O Queues throughput)
|
||||
|
|
|
@ -123,7 +123,7 @@ msg_t chIQGet(Queue *qp) {
|
|||
* a byte arrives in the queue or the specified time expires.
|
||||
*
|
||||
* @param qp pointer to a @p Queue structure
|
||||
* @param time the number of ticks before the operation timouts
|
||||
* @param time the number of ticks before the operation timeouts
|
||||
* @return A byte value from the queue.
|
||||
* @retval Q_TIMEOUT if the specified time expired.
|
||||
* @retval Q_RESET if the queue was reset.
|
||||
|
|
|
@ -100,6 +100,7 @@ void chSchGoSleepS(tstate_t newstate) {
|
|||
static void wakeup(void *p) {
|
||||
Thread *tp = (Thread *)p;
|
||||
|
||||
#if CH_USE_SEMAPHORES || CH_USE_MUTEXES || CH_USE_CONDVARS
|
||||
switch (tp->p_state) {
|
||||
#if CH_USE_SEMAPHORES
|
||||
case PRWTSEM:
|
||||
|
@ -110,10 +111,9 @@ static void wakeup(void *p) {
|
|||
case PRWTMTX:
|
||||
/* States requiring dequeuing. */
|
||||
dequeue(tp);
|
||||
/* Falls into, intentional. */
|
||||
default:
|
||||
chSchReadyI(tp)->p_rdymsg = RDY_TIMEOUT;
|
||||
}
|
||||
#endif
|
||||
chSchReadyI(tp)->p_rdymsg = RDY_TIMEOUT;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue