summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2006-04-05 20:08:59 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2006-04-05 20:08:59 +0000
commit5250299424370c42bf270a307fae248d348720cf (patch)
tree142042ca4670b07804d162aad3f06a932a9bd5d9 /cpukit
parent2006-04-02 Ralf Corsépius <ralf.corsepius@rtems.org> (diff)
downloadrtems-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')
-rw-r--r--cpukit/ChangeLog13
-rw-r--r--cpukit/score/include/rtems/score/mpci.h7
-rw-r--r--cpukit/score/include/rtems/score/threadmp.h8
-rw-r--r--cpukit/score/inline/rtems/score/threadmp.inl2
-rw-r--r--cpukit/score/macros/rtems/score/threadmp.inl2
-rw-r--r--cpukit/score/src/threadmp.c7
-rw-r--r--cpukit/score/src/threadqenqueue.c3
7 files changed, 27 insertions, 15 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog
index 29e23e986d..2fc654c877 100644
--- a/cpukit/ChangeLog
+++ b/cpukit/ChangeLog
@@ -1,3 +1,16 @@
+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.
+
2006-03-27 Eric Norum <norume@aps.anl.gov>
* libmisc/monitor/prmisc.c: Eliminate undesired sign-extension.
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
*