summaryrefslogtreecommitdiffstats
path: root/cpukit/score
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-01-28 17:19:01 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-01-28 17:19:01 +0000
commitdef9eef5f7fd8d82fcb194d77636cb7801d64394 (patch)
tree9169485a3638c511dd424a298183756b74fbd548 /cpukit/score
parent2008-01-25 Jennifer Averett <jennifer.averett@OARcorp.com> (diff)
downloadrtems-def9eef5f7fd8d82fcb194d77636cb7801d64394.tar.bz2
2008-01-28 Joel Sherrill <joel.sherrill@OARcorp.com>
* sapi/include/confdefs.h, score/src/mpci.c, score/src/objectmp.c, score/src/objectnametoid.c, score/src/objectnametoidstring.c: Multiprocessing compiles again and survives initialization. The recent object name and confdefs.h changes had broken it.
Diffstat (limited to 'cpukit/score')
-rw-r--r--cpukit/score/src/mpci.c7
-rw-r--r--cpukit/score/src/objectmp.c2
-rw-r--r--cpukit/score/src/objectnametoid.c6
-rw-r--r--cpukit/score/src/objectnametoidstring.c6
4 files changed, 15 insertions, 6 deletions
diff --git a/cpukit/score/src/mpci.c b/cpukit/score/src/mpci.c
index 17eb37625f..058191530d 100644
--- a/cpukit/score/src/mpci.c
+++ b/cpukit/score/src/mpci.c
@@ -95,10 +95,10 @@ void _MPCI_Handler_initialization(
* This subprogram creates the MPCI receive server.
*/
-char *_MPCI_Internal_name = "MPCI";
-
void _MPCI_Create_server( void )
{
+ Objects_Name name;
+
if ( !_System_state_Is_multiprocessing )
return;
@@ -109,6 +109,7 @@ void _MPCI_Create_server( void )
_MPCI_Receive_server_tcb = _Thread_Internal_allocate();
+ name.name_u32 = _Objects_Build_name( 'M', 'P', 'C', 'I' );
_Thread_Initialize(
&_Thread_Internal_information,
_MPCI_Receive_server_tcb,
@@ -122,7 +123,7 @@ void _MPCI_Create_server( void )
THREAD_CPU_BUDGET_ALGORITHM_NONE,
NULL, /* no budget algorithm callout */
0, /* all interrupts enabled */
- _MPCI_Internal_name
+ name
);
_Thread_Start(
diff --git a/cpukit/score/src/objectmp.c b/cpukit/score/src/objectmp.c
index dae942cb63..b9c05ee681 100644
--- a/cpukit/score/src/objectmp.c
+++ b/cpukit/score/src/objectmp.c
@@ -169,7 +169,7 @@ Objects_Name_or_id_lookup_errors _Objects_MP_Global_name_search (
Objects_MP_Control *the_object;
uint32_t name_to_use;
- name_to_use = (uint32_t)the_name; /* XXX only fixed length names */
+ name_to_use = the_name.name_u32; /* XXX only fixed length names */
if ( nodes_to_search > _Objects_Maximum_nodes )
return OBJECTS_INVALID_NODE;
diff --git a/cpukit/score/src/objectnametoid.c b/cpukit/score/src/objectnametoid.c
index cc523e17b9..021e361cf7 100644
--- a/cpukit/score/src/objectnametoid.c
+++ b/cpukit/score/src/objectnametoid.c
@@ -58,6 +58,9 @@ Objects_Name_or_id_lookup_errors _Objects_Name_to_id_u32(
Objects_Control *the_object;
uint32_t index;
uint32_t name_length;
+#if defined(RTEMS_MULTIPROCESSING)
+ Objects_Name name_for_mp;
+#endif
/* ASSERT: information->is_string == FALSE */
@@ -95,7 +98,8 @@ Objects_Name_or_id_lookup_errors _Objects_Name_to_id_u32(
if ( _Objects_Is_local_node( node ) || node == OBJECTS_SEARCH_LOCAL_NODE )
return OBJECTS_INVALID_NAME;
- return ( _Objects_MP_Global_name_search( information, name, node, id ) );
+ name_for_mp.name_u32 = name;
+ return _Objects_MP_Global_name_search( information, name_for_mp, node, id );
#else
return OBJECTS_INVALID_NAME;
#endif
diff --git a/cpukit/score/src/objectnametoidstring.c b/cpukit/score/src/objectnametoidstring.c
index f6ebd41d4e..2ab5d7e0c2 100644
--- a/cpukit/score/src/objectnametoidstring.c
+++ b/cpukit/score/src/objectnametoidstring.c
@@ -60,6 +60,9 @@ Objects_Name_or_id_lookup_errors _Objects_Name_to_id_string(
Objects_Control *the_object;
uint32_t index;
uint32_t name_length;
+#if defined(RTEMS_MULTIPROCESSING)
+ Objects_Name name_for_mp;
+#endif
/* ASSERT: information->is_string == TRUE */
@@ -100,7 +103,8 @@ Objects_Name_or_id_lookup_errors _Objects_Name_to_id_string(
if ( _Objects_Is_local_node( node ) || node == OBJECTS_SEARCH_LOCAL_NODE )
return OBJECTS_INVALID_NAME;
- return ( _Objects_MP_Global_name_search( information, name, node, id ) );
+ name_for_mp.name_p = name;
+ return _Objects_MP_Global_name_search( information, name_for_mp, node, id );
#else
return OBJECTS_INVALID_NAME;
#endif