summaryrefslogtreecommitdiffstats
path: root/cpukit/score/src/mpci.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-03-23 10:01:31 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-03-29 07:26:42 +0200
commit1e1a91ed11458ddbb27b94d0001d8f0fc2ef7a97 (patch)
tree5e7cb0e88da11528eb7fb4bae9148564c949d066 /cpukit/score/src/mpci.c
parentlibcpu/m68k/mcf5272/clock/ckinit.c: Fix warning by including <rtems/clockdrv.h> (diff)
downloadrtems-1e1a91ed11458ddbb27b94d0001d8f0fc2ef7a97.tar.bz2
score: Remove Thread_queue_Queue::operations field
Remove the Thread_queue_Queue::operations field to reduce the size of this structure. Add a thread queue operations parameter to the _Thread_queue_First(), _Thread_queue_First_locked(), _Thread_queue_Enqueue(), _Thread_queue_Dequeue() and _Thread_queue_Flush() functions. This is a preparation patch to reduce the size of several synchronization objects.
Diffstat (limited to 'cpukit/score/src/mpci.c')
-rw-r--r--cpukit/score/src/mpci.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/cpukit/score/src/mpci.c b/cpukit/score/src/mpci.c
index 3929d78a09..8e93d74dd9 100644
--- a/cpukit/score/src/mpci.c
+++ b/cpukit/score/src/mpci.c
@@ -54,7 +54,8 @@ const rtems_multiprocessing_table
*/
CORE_semaphore_Control _MPCI_Semaphore;
-Thread_queue_Control _MPCI_Remote_blocked_threads;
+Thread_queue_Control _MPCI_Remote_blocked_threads =
+ THREAD_QUEUE_INITIALIZER( "MPCI Remote Blocked Threads" );
MPCI_Control *_MPCI_table;
@@ -85,7 +86,6 @@ static void _MPCI_Handler_early_initialization( void )
static void _MPCI_Handler_initialization( void )
{
- CORE_semaphore_Attributes attributes;
MPCI_Control *users_mpci_table;
_Objects_MP_Handler_initialization();
@@ -117,18 +117,12 @@ static void _MPCI_Handler_initialization( void )
* Create the counting semaphore used by the MPCI Receive Server.
*/
- attributes.discipline = CORE_SEMAPHORE_DISCIPLINES_FIFO;
-
_CORE_semaphore_Initialize(
&_MPCI_Semaphore,
- &attributes, /* the_semaphore_attributes */
+ CORE_SEMAPHORE_DISCIPLINES_FIFO,
+ 0xffffffff,
0 /* initial_value */
);
-
- _Thread_queue_Initialize(
- &_MPCI_Remote_blocked_threads,
- THREAD_QUEUE_DISCIPLINE_FIFO
- );
}
static void _MPCI_Create_server( void )
@@ -262,6 +256,7 @@ uint32_t _MPCI_Send_request_packet (
_Thread_queue_Enqueue(
&_MPCI_Remote_blocked_threads,
+ &_Thread_queue_Operations_FIFO,
executing,
STATES_WAITING_FOR_RPC_REPLY | extra_state,
the_packet->timeout,