diff options
author | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2010-01-20 19:37:07 +0000 |
---|---|---|
committer | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2010-01-20 19:37:07 +0000 |
commit | 14005a2ffefe28adb2ce2cfdad24be782090c089 (patch) | |
tree | e758e6773e5cfe7079b98028e6fd639994353b65 | |
parent | 7bd8164f8ff6ffd0a9458d44e18097582adae201 (diff) | |
download | ChibiOS-14005a2ffefe28adb2ce2cfdad24be782090c089.tar.gz ChibiOS-14005a2ffefe28adb2ce2cfdad24be782090c089.tar.bz2 ChibiOS-14005a2ffefe28adb2ce2cfdad24be782090c089.zip |
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@1533 35acf78f-673a-0410-8e92-d51de3d6d3f4
-rw-r--r-- | os/kernel/src/chmtx.c | 8 | ||||
-rw-r--r-- | os/ports/GCC/ARMCM3/chcore.c | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/os/kernel/src/chmtx.c b/os/kernel/src/chmtx.c index 962356db8..d319b9316 100644 --- a/os/kernel/src/chmtx.c +++ b/os/kernel/src/chmtx.c @@ -88,26 +88,26 @@ void chMtxLockS(Mutex *mp) { switch (tp->p_state) { case THD_STATE_WTMTX: /* Re-enqueues tp with its new priority on the mutex wait queue.*/ - prio_insert(dequeue(tp), (ThreadsQueue *)&tp->p_u.wtobjp); + prio_insert(dequeue(tp), (ThreadsQueue *)tp->p_u.wtobjp); /* Boost the owner of this mutex if needed.*/ tp = ((Mutex *)tp->p_u.wtobjp)->m_owner; continue; #if CH_USE_CONDVARS case THD_STATE_WTCOND: /* Re-enqueues tp with its new priority on the condvar queue.*/ - prio_insert(dequeue(tp), (ThreadsQueue *)&tp->p_u.wtobjp); + prio_insert(dequeue(tp), (ThreadsQueue *)tp->p_u.wtobjp); break; #endif #if CH_USE_SEMAPHORES_PRIORITY case THD_STATE_WTSEM: /* Re-enqueues tp with its new priority on the semaphore queue.*/ - prio_insert(dequeue(tp), (ThreadsQueue *)&tp->p_u.wtobjp); + prio_insert(dequeue(tp), (ThreadsQueue *)tp->p_u.wtobjp); break; #endif #if CH_USE_MESSAGES_PRIORITY case THD_STATE_SNDMSG: /* Re-enqueues tp with its new priority on the server thread queue.*/ - prio_insert(dequeue(tp), ((Thread *)tp->p_u.wtobjp)->p_msgqueue); + prio_insert(dequeue(tp), &((Thread *)tp->p_u.wtobjp)->p_msgqueue); break; #endif case THD_STATE_READY: diff --git a/os/ports/GCC/ARMCM3/chcore.c b/os/ports/GCC/ARMCM3/chcore.c index 6a8f21853..e7f6b82c3 100644 --- a/os/ports/GCC/ARMCM3/chcore.c +++ b/os/ports/GCC/ARMCM3/chcore.c @@ -158,7 +158,7 @@ void PendSVVector(void) { PUSH_CONTEXT(sp_thd);
(otp = currp)->p_ctx.r13 = sp_thd;
- (currp = fifo_remove(&rlist.r_queue))->p_state = PRCURR;
+ (currp = fifo_remove(&rlist.r_queue))->p_state = THD_STATE_CURRENT;
chSchReadyI(otp);
#if CH_TIME_QUANTUM > 0
/* set the round-robin time quantum */
|