diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2006-04-05 20:08:59 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2006-04-05 20:08:59 +0000 |
commit | 5250299424370c42bf270a307fae248d348720cf (patch) | |
tree | 142042ca4670b07804d162aad3f06a932a9bd5d9 /cpukit/score | |
parent | 2006-04-02 Ralf Corsépius <ralf.corsepius@rtems.org> (diff) | |
download | rtems-5250299424370c42bf270a307fae248d348720cf.tar.bz2 |
2006-04-05 Joel Sherrill <joel@OARcorp.com>
Victor V. Vengerov <Victor.Vengerov@oktetlabs.ru>
* score/include/rtems/score/mpci.h,
score/include/rtems/score/threadmp.h,
score/inline/rtems/score/threadmp.inl,
score/macros/rtems/score/threadmp.inl, score/src/threadmp.c,
score/src/threadqenqueue.c: Victor spotted the problem that
_MPCI_Receive_server_tcb and _Thread_MP_Receive were duplicate
variables and needed to be set to the same value. I took that
idea and just removed _Thread_MP_Receive. All uses are now
_MPCI_Receive_server_tcb.
Diffstat (limited to 'cpukit/score')
-rw-r--r-- | cpukit/score/include/rtems/score/mpci.h | 7 | ||||
-rw-r--r-- | cpukit/score/include/rtems/score/threadmp.h | 8 | ||||
-rw-r--r-- | cpukit/score/inline/rtems/score/threadmp.inl | 2 | ||||
-rw-r--r-- | cpukit/score/macros/rtems/score/threadmp.inl | 2 | ||||
-rw-r--r-- | cpukit/score/src/threadmp.c | 7 | ||||
-rw-r--r-- | cpukit/score/src/threadqenqueue.c | 3 |
6 files changed, 14 insertions, 15 deletions
diff --git a/cpukit/score/include/rtems/score/mpci.h b/cpukit/score/include/rtems/score/mpci.h index d6fc3aa0c1..18abdaf043 100644 --- a/cpukit/score/include/rtems/score/mpci.h +++ b/cpukit/score/include/rtems/score/mpci.h @@ -195,8 +195,11 @@ SCORE_EXTERN Thread_queue_Control _MPCI_Remote_blocked_threads; */ SCORE_EXTERN MPCI_Control *_MPCI_table; -/** - * The following points to the MPCI Receive Server. +/** @brief Pointer to MP Thread Control Block + * + * The following is used to determine when the multiprocessing receive + * thread is executing so that a proxy can be allocated instead of + * blocking the multiprocessing receive thread. */ SCORE_EXTERN Thread_Control *_MPCI_Receive_server_tcb; diff --git a/cpukit/score/include/rtems/score/threadmp.h b/cpukit/score/include/rtems/score/threadmp.h index 6b0ced7307..d187f69398 100644 --- a/cpukit/score/include/rtems/score/threadmp.h +++ b/cpukit/score/include/rtems/score/threadmp.h @@ -62,14 +62,6 @@ Thread_Control *_Thread_MP_Find_proxy ( Objects_Id the_id ); -/** @brief Pointer to MP Thread Control Block - * - * The following is used to determine when the multiprocessing receive - * thread is executing so that a proxy can be allocated instead of - * blocking the multiprocessing receive thread. - */ -SCORE_EXTERN Thread_Control *_Thread_MP_Receive; - /** @brief Active Proxy Set * * The following chain is used to manage the active set proxies. diff --git a/cpukit/score/inline/rtems/score/threadmp.inl b/cpukit/score/inline/rtems/score/threadmp.inl index 40c911fe29..8299ce82cb 100644 --- a/cpukit/score/inline/rtems/score/threadmp.inl +++ b/cpukit/score/inline/rtems/score/threadmp.inl @@ -33,7 +33,7 @@ RTEMS_INLINE_ROUTINE boolean _Thread_MP_Is_receive ( Thread_Control *the_thread ) { - return the_thread == _Thread_MP_Receive; + return the_thread == _MPCI_Receive_server_tcb; } /** diff --git a/cpukit/score/macros/rtems/score/threadmp.inl b/cpukit/score/macros/rtems/score/threadmp.inl index e9127b6733..b1c2456c35 100644 --- a/cpukit/score/macros/rtems/score/threadmp.inl +++ b/cpukit/score/macros/rtems/score/threadmp.inl @@ -23,7 +23,7 @@ */ #define _Thread_MP_Is_receive( _the_thread ) \ - ( (_the_thread) == _Thread_MP_Receive) + ( (_the_thread) == _MPCI_Receive_server_tcb) /*PAGE * diff --git a/cpukit/score/src/threadmp.c b/cpukit/score/src/threadmp.c index 8b860bef2d..8cac0a99b9 100644 --- a/cpukit/score/src/threadmp.c +++ b/cpukit/score/src/threadmp.c @@ -19,6 +19,7 @@ #include <rtems/system.h> #include <rtems/score/priority.h> #include <rtems/score/thread.h> +#include <rtems/score/mpci.h> #include <rtems/score/wkspace.h> #include <rtems/score/isr.h> @@ -73,12 +74,12 @@ Thread_Control *_Thread_MP_Allocate_proxy ( _Thread_Executing->Wait.return_code = THREAD_STATUS_PROXY_BLOCKING; - the_proxy->receive_packet = _Thread_MP_Receive->receive_packet; + the_proxy->receive_packet = _MPCI_Receive_server_tcb->receive_packet; - the_proxy->Object.id = _Thread_MP_Receive->receive_packet->source_tid; + the_proxy->Object.id = _MPCI_Receive_server_tcb->receive_packet->source_tid; the_proxy->current_priority = - _Thread_MP_Receive->receive_packet->source_priority; + _MPCI_Receive_server_tcb->receive_packet->source_priority; the_proxy->current_state = _States_Set( STATES_DORMANT, the_state ); diff --git a/cpukit/score/src/threadqenqueue.c b/cpukit/score/src/threadqenqueue.c index 97a68b2e68..61bbb0cccb 100644 --- a/cpukit/score/src/threadqenqueue.c +++ b/cpukit/score/src/threadqenqueue.c @@ -24,6 +24,9 @@ #include <rtems/score/thread.h> #include <rtems/score/threadq.h> #include <rtems/score/tqdata.h> +#if defined(RTEMS_MULTIPROCESSING) +#include <rtems/score/mpci.h> +#endif /*PAGE * |