summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/src
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1995-08-23 19:30:23 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1995-08-23 19:30:23 +0000
commit3235ad9a2cd717df901853ad5220a4aaffae84a9 (patch)
treef73a01d8c3065188a3ab283cf545b3ce7bc4f696 /cpukit/rtems/src
parentAdded file .. fixed RCS Id (diff)
downloadrtems-3235ad9a2cd717df901853ad5220a4aaffae84a9.tar.bz2
Support for variable length names added to Object Handler. This supports
both fixed length "raw" names and strings from the API's point of view. Both inline and macro implementations were tested.
Diffstat (limited to 'cpukit/rtems/src')
-rw-r--r--cpukit/rtems/src/dpmem.c29
-rw-r--r--cpukit/rtems/src/msg.c26
-rw-r--r--cpukit/rtems/src/msgmp.c4
-rw-r--r--cpukit/rtems/src/part.c15
-rw-r--r--cpukit/rtems/src/partmp.c4
-rw-r--r--cpukit/rtems/src/ratemon.c23
-rw-r--r--cpukit/rtems/src/region.c25
-rw-r--r--cpukit/rtems/src/regionmp.c4
-rw-r--r--cpukit/rtems/src/rtemstimer.c23
-rw-r--r--cpukit/rtems/src/sem.c17
-rw-r--r--cpukit/rtems/src/semmp.c4
-rw-r--r--cpukit/rtems/src/taskmp.c2
-rw-r--r--cpukit/rtems/src/tasks.c11
13 files changed, 110 insertions, 77 deletions
diff --git a/cpukit/rtems/src/dpmem.c b/cpukit/rtems/src/dpmem.c
index b594ecd00e..ea2469f4c5 100644
--- a/cpukit/rtems/src/dpmem.c
+++ b/cpukit/rtems/src/dpmem.c
@@ -13,6 +13,7 @@
*/
#include <rtems/system.h>
+#include <rtems/support.h>
#include <rtems/address.h>
#include <rtems/dpmem.h>
#include <rtems/object.h>
@@ -36,11 +37,13 @@ void _Dual_ported_memory_Manager_initialization(
)
{
_Objects_Initialize_information(
- &_Dual_ported_memory_Information,
- OBJECTS_RTEMS_PORTS,
- FALSE,
- maximum_ports,
- sizeof( Dual_ported_memory_Control )
+ &_Dual_ported_memory_Information,
+ OBJECTS_RTEMS_PORTS,
+ FALSE,
+ maximum_ports,
+ sizeof( Dual_ported_memory_Control ),
+ FALSE,
+ RTEMS_MAXIMUM_NAME_LENGTH
);
}
@@ -64,7 +67,7 @@ void _Dual_ported_memory_Manager_initialization(
*/
rtems_status_code rtems_port_create(
- Objects_Name name,
+ rtems_name name,
void *internal_start,
void *external_start,
unsigned32 length,
@@ -73,7 +76,7 @@ rtems_status_code rtems_port_create(
{
register Dual_ported_memory_Control *the_port;
- if ( !_Objects_Is_name_valid( name) )
+ if ( !rtems_is_name_valid( name) )
return ( RTEMS_INVALID_NAME );
if ( !_Addresses_Is_aligned( internal_start ) ||
@@ -93,8 +96,12 @@ rtems_status_code rtems_port_create(
the_port->external_base = external_start;
the_port->length = length - 1;
- _Objects_Open( &_Dual_ported_memory_Information,
- &the_port->Object, name );
+ _Objects_Open(
+ &_Dual_ported_memory_Information,
+ &the_port->Object,
+ &name
+ );
+
*id = the_port->Object.id;
_Thread_Enable_dispatch();
return( RTEMS_SUCCESSFUL );
@@ -118,14 +125,14 @@ rtems_status_code rtems_port_create(
*/
rtems_status_code rtems_port_ident(
- Objects_Name name,
+ rtems_name name,
Objects_Id *id
)
{
return(
_Objects_Name_to_id(
&_Dual_ported_memory_Information,
- name,
+ &name,
RTEMS_SEARCH_ALL_NODES,
id
)
diff --git a/cpukit/rtems/src/msg.c b/cpukit/rtems/src/msg.c
index 49d7d0b3f3..d7c456f90a 100644
--- a/cpukit/rtems/src/msg.c
+++ b/cpukit/rtems/src/msg.c
@@ -22,6 +22,7 @@
#include <rtems/object.h>
#include <rtems/options.h>
#include <rtems/states.h>
+#include <rtems/support.h>
#include <rtems/thread.h>
#include <rtems/wkspace.h>
#include <rtems/mpci.h>
@@ -48,7 +49,9 @@ void _Message_queue_Manager_initialization(
OBJECTS_RTEMS_MESSAGE_QUEUES,
TRUE,
maximum_message_queues,
- sizeof( Message_queue_Control )
+ sizeof( Message_queue_Control ),
+ FALSE,
+ RTEMS_MAXIMUM_NAME_LENGTH
);
}
@@ -130,7 +133,7 @@ failed:
*/
rtems_status_code rtems_message_queue_create(
- Objects_Name name,
+ rtems_name name,
unsigned32 count,
unsigned32 max_message_size,
rtems_attribute attribute_set,
@@ -139,7 +142,7 @@ rtems_status_code rtems_message_queue_create(
{
register Message_queue_Control *the_message_queue;
- if ( !_Objects_Is_name_valid( name ) )
+ if ( !rtems_is_name_valid( name ) )
return ( RTEMS_INVALID_NAME );
if ( _Attributes_Is_global( attribute_set ) &&
@@ -194,8 +197,11 @@ rtems_status_code rtems_message_queue_create(
_Thread_queue_Initialize( &the_message_queue->Wait_queue, attribute_set,
STATES_WAITING_FOR_MESSAGE );
- _Objects_Open( &_Message_queue_Information,
- &the_message_queue->Object, name );
+ _Objects_Open(
+ &_Message_queue_Information,
+ &the_message_queue->Object,
+ &name
+ );
*id = the_message_queue->Object.id;
@@ -230,13 +236,17 @@ rtems_status_code rtems_message_queue_create(
*/
rtems_status_code rtems_message_queue_ident(
- Objects_Name name,
+ rtems_name name,
unsigned32 node,
Objects_Id *id
)
{
- return( _Objects_Name_to_id( &_Message_queue_Information, name,
- node, id ) );
+ return _Objects_Name_to_id(
+ &_Message_queue_Information,
+ &name,
+ node,
+ id
+ );
}
/*PAGE
diff --git a/cpukit/rtems/src/msgmp.c b/cpukit/rtems/src/msgmp.c
index 75e83b5bf8..37ce2c9453 100644
--- a/cpukit/rtems/src/msgmp.c
+++ b/cpukit/rtems/src/msgmp.c
@@ -32,7 +32,7 @@
void _Message_queue_MP_Send_process_packet (
Message_queue_MP_Remote_operations operation,
Objects_Id message_queue_id,
- Objects_Name name,
+ rtems_name name,
Objects_Id proxy_id
)
{
@@ -434,7 +434,7 @@ void _Message_queue_MP_Send_extract_proxy (
_Message_queue_MP_Send_process_packet(
MESSAGE_QUEUE_MP_EXTRACT_PROXY,
the_thread->Wait.id,
- (Objects_Name) 0,
+ (rtems_name) 0,
the_thread->Object.id
);
}
diff --git a/cpukit/rtems/src/part.c b/cpukit/rtems/src/part.c
index 7cf0fe691c..b1e284c669 100644
--- a/cpukit/rtems/src/part.c
+++ b/cpukit/rtems/src/part.c
@@ -14,6 +14,7 @@
*/
#include <rtems/system.h>
+#include <rtems/support.h>
#include <rtems/address.h>
#include <rtems/config.h>
#include <rtems/object.h>
@@ -42,7 +43,9 @@ void _Partition_Manager_initialization(
OBJECTS_RTEMS_PARTITIONS,
TRUE,
maximum_partitions,
- sizeof( Partition_Control )
+ sizeof( Partition_Control ),
+ FALSE,
+ RTEMS_MAXIMUM_NAME_LENGTH
);
}
@@ -69,7 +72,7 @@ void _Partition_Manager_initialization(
*/
rtems_status_code rtems_partition_create(
- Objects_Name name,
+ rtems_name name,
void *starting_address,
unsigned32 length,
unsigned32 buffer_size,
@@ -79,7 +82,7 @@ rtems_status_code rtems_partition_create(
{
register Partition_Control *the_partition;
- if ( !_Objects_Is_name_valid( name ) )
+ if ( !rtems_is_name_valid( name ) )
return ( RTEMS_INVALID_NAME );
if ( length == 0 || buffer_size == 0 || length < buffer_size ||
@@ -118,7 +121,7 @@ rtems_status_code rtems_partition_create(
_Chain_Initialize( &the_partition->Memory, starting_address,
length / buffer_size, buffer_size );
- _Objects_Open( &_Partition_Information, &the_partition->Object, name );
+ _Objects_Open( &_Partition_Information, &the_partition->Object, &name );
*id = the_partition->Object.id;
if ( _Attributes_Is_global( attribute_set ) )
@@ -152,12 +155,12 @@ rtems_status_code rtems_partition_create(
*/
rtems_status_code rtems_partition_ident(
- Objects_Name name,
+ rtems_name name,
unsigned32 node,
Objects_Id *id
)
{
- return( _Objects_Name_to_id( &_Partition_Information, name, node, id ) );
+ return _Objects_Name_to_id( &_Partition_Information, &name, node, id );
}
/*PAGE
diff --git a/cpukit/rtems/src/partmp.c b/cpukit/rtems/src/partmp.c
index 9cc1723106..074165777b 100644
--- a/cpukit/rtems/src/partmp.c
+++ b/cpukit/rtems/src/partmp.c
@@ -30,7 +30,7 @@
void _Partition_MP_Send_process_packet (
Partition_MP_Remote_operations operation,
Objects_Id partition_id,
- Objects_Name name,
+ rtems_name name,
Objects_Id proxy_id
)
{
@@ -280,7 +280,7 @@ void _Partition_MP_Send_extract_proxy (
_Partition_MP_Send_process_packet(
PARTITION_MP_EXTRACT_PROXY,
the_thread->Wait.id,
- (Objects_Name) 0,
+ (rtems_name) 0,
the_thread->Object.id
);
diff --git a/cpukit/rtems/src/ratemon.c b/cpukit/rtems/src/ratemon.c
index 86f1534d98..6e84c56fb3 100644
--- a/cpukit/rtems/src/ratemon.c
+++ b/cpukit/rtems/src/ratemon.c
@@ -14,6 +14,7 @@
*/
#include <rtems/system.h>
+#include <rtems/support.h>
#include <rtems/isr.h>
#include <rtems/object.h>
#include <rtems/ratemon.h>
@@ -40,11 +41,13 @@ void _Rate_monotonic_Manager_initialization(
)
{
_Objects_Initialize_information(
- &_Rate_monotonic_Information,
- OBJECTS_RTEMS_PERIODS,
- FALSE,
- maximum_periods,
- sizeof( Rate_monotonic_Control )
+ &_Rate_monotonic_Information,
+ OBJECTS_RTEMS_PERIODS,
+ FALSE,
+ maximum_periods,
+ sizeof( Rate_monotonic_Control ),
+ FALSE,
+ RTEMS_MAXIMUM_NAME_LENGTH
);
}
@@ -66,13 +69,13 @@ void _Rate_monotonic_Manager_initialization(
*/
rtems_status_code rtems_rate_monotonic_create(
- Objects_Name name,
+ rtems_name name,
Objects_Id *id
)
{
Rate_monotonic_Control *the_period;
- if ( !_Objects_Is_name_valid( name ) )
+ if ( !rtems_is_name_valid( name ) )
return( RTEMS_INVALID_NAME );
_Thread_Disable_dispatch(); /* to prevent deletion */
@@ -87,7 +90,7 @@ rtems_status_code rtems_rate_monotonic_create(
the_period->owner = _Thread_Executing;
the_period->state = RATE_MONOTONIC_INACTIVE;
- _Objects_Open( &_Rate_monotonic_Information, &the_period->Object, name );
+ _Objects_Open( &_Rate_monotonic_Information, &the_period->Object, &name );
*id = the_period->Object.id;
_Thread_Enable_dispatch();
@@ -112,13 +115,13 @@ rtems_status_code rtems_rate_monotonic_create(
*/
rtems_status_code rtems_rate_monotonic_ident(
- Objects_Name name,
+ rtems_name name,
Objects_Id *id
)
{
return _Objects_Name_to_id(
&_Rate_monotonic_Information,
- name,
+ &name,
RTEMS_SEARCH_LOCAL_NODE,
id
);
diff --git a/cpukit/rtems/src/region.c b/cpukit/rtems/src/region.c
index 40bd7ffa26..90916dcc3a 100644
--- a/cpukit/rtems/src/region.c
+++ b/cpukit/rtems/src/region.c
@@ -14,6 +14,7 @@
*/
#include <rtems/system.h>
+#include <rtems/support.h>
#include <rtems/config.h>
#include <rtems/object.h>
#include <rtems/options.h>
@@ -38,12 +39,14 @@ void _Region_Manager_initialization(
)
{
_Objects_Initialize_information(
- &_Region_Information,
- OBJECTS_RTEMS_REGIONS,
- FALSE,
- maximum_regions,
- sizeof( Region_Control )
- );
+ &_Region_Information,
+ OBJECTS_RTEMS_REGIONS,
+ FALSE,
+ maximum_regions,
+ sizeof( Region_Control ),
+ FALSE,
+ RTEMS_MAXIMUM_NAME_LENGTH
+ );
}
/*PAGE
@@ -68,7 +71,7 @@ void _Region_Manager_initialization(
*/
rtems_status_code rtems_region_create(
- Objects_Name name,
+ rtems_name name,
void *starting_address,
unsigned32 length,
unsigned32 page_size,
@@ -78,7 +81,7 @@ rtems_status_code rtems_region_create(
{
Region_Control *the_region;
- if ( !_Objects_Is_name_valid( name ) )
+ if ( !rtems_is_name_valid( name ) )
return ( RTEMS_INVALID_NAME );
if ( !_Addresses_Is_aligned( starting_address ) )
@@ -111,7 +114,7 @@ rtems_status_code rtems_region_create(
_Thread_queue_Initialize(
&the_region->Wait_queue, attribute_set, STATES_WAITING_FOR_SEGMENT );
- _Objects_Open( &_Region_Information, &the_region->Object, name );
+ _Objects_Open( &_Region_Information, &the_region->Object, &name );
*id = the_region->Object.id;
_Thread_Enable_dispatch();
@@ -136,13 +139,13 @@ rtems_status_code rtems_region_create(
*/
rtems_status_code rtems_region_ident(
- Objects_Name name,
+ rtems_name name,
Objects_Id *id
)
{
return _Objects_Name_to_id(
&_Region_Information,
- name,
+ &name,
RTEMS_SEARCH_LOCAL_NODE,
id
);
diff --git a/cpukit/rtems/src/regionmp.c b/cpukit/rtems/src/regionmp.c
index 558ae1639a..07de556acc 100644
--- a/cpukit/rtems/src/regionmp.c
+++ b/cpukit/rtems/src/regionmp.c
@@ -30,7 +30,7 @@
void _Region_MP_Send_process_packet (
Region_MP_Remote_operations operation,
Objects_Id region_id,
- Objects_Name name,
+ rtems_name name,
Objects_Id proxy_id
)
{
@@ -289,7 +289,7 @@ void _Region_MP_Send_extract_proxy (
_Region_MP_Send_process_packet(
REGION_MP_EXTRACT_PROXY,
the_thread->Wait.id,
- (Objects_Name) 0,
+ (rtems_name) 0,
the_thread->Object.id
);
}
diff --git a/cpukit/rtems/src/rtemstimer.c b/cpukit/rtems/src/rtemstimer.c
index ec55c3eaf9..2aad758269 100644
--- a/cpukit/rtems/src/rtemstimer.c
+++ b/cpukit/rtems/src/rtemstimer.c
@@ -14,6 +14,7 @@
*/
#include <rtems/system.h>
+#include <rtems/support.h>
#include <rtems/object.h>
#include <rtems/thread.h>
#include <rtems/timer.h>
@@ -37,11 +38,13 @@ void _Timer_Manager_initialization(
)
{
_Objects_Initialize_information(
- &_Timer_Information,
- OBJECTS_RTEMS_TIMERS,
- FALSE,
- maximum_timers,
- sizeof( Timer_Control )
+ &_Timer_Information,
+ OBJECTS_RTEMS_TIMERS,
+ FALSE,
+ maximum_timers,
+ sizeof( Timer_Control ),
+ FALSE,
+ RTEMS_MAXIMUM_NAME_LENGTH
);
}
@@ -62,13 +65,13 @@ void _Timer_Manager_initialization(
*/
rtems_status_code rtems_timer_create(
- Objects_Name name,
+ rtems_name name,
Objects_Id *id
)
{
Timer_Control *the_timer;
- if ( !_Objects_Is_name_valid( name ) )
+ if ( !rtems_is_name_valid( name ) )
return ( RTEMS_INVALID_NAME );
_Thread_Disable_dispatch(); /* to prevent deletion */
@@ -82,7 +85,7 @@ rtems_status_code rtems_timer_create(
the_timer->the_class = TIMER_DORMANT;
- _Objects_Open( &_Timer_Information, &the_timer->Object, name );
+ _Objects_Open( &_Timer_Information, &the_timer->Object, &name );
*id = the_timer->Object.id;
_Thread_Enable_dispatch();
@@ -107,13 +110,13 @@ rtems_status_code rtems_timer_create(
*/
rtems_status_code rtems_timer_ident(
- Objects_Name name,
+ rtems_name name,
Objects_Id *id
)
{
return _Objects_Name_to_id(
&_Timer_Information,
- name,
+ &name,
RTEMS_SEARCH_LOCAL_NODE,
id
);
diff --git a/cpukit/rtems/src/sem.c b/cpukit/rtems/src/sem.c
index 340a4fa947..46dff9cdd7 100644
--- a/cpukit/rtems/src/sem.c
+++ b/cpukit/rtems/src/sem.c
@@ -27,6 +27,7 @@
*/
#include <rtems/system.h>
+#include <rtems/support.h>
#include <rtems/attr.h>
#include <rtems/config.h>
#include <rtems/isr.h>
@@ -56,10 +57,12 @@ void _Semaphore_Manager_initialization(
{
_Objects_Initialize_information(
&_Semaphore_Information,
- OBJECTS_RTEMS_SEMAPHORES,
+ OBJECTS_RTEMS_SEMAPHORES,
TRUE,
maximum_semaphores,
- sizeof( Semaphore_Control )
+ sizeof( Semaphore_Control ),
+ FALSE,
+ RTEMS_MAXIMUM_NAME_LENGTH
);
}
@@ -83,7 +86,7 @@ void _Semaphore_Manager_initialization(
*/
rtems_status_code rtems_semaphore_create(
- Objects_Name name,
+ rtems_name name,
unsigned32 count,
rtems_attribute attribute_set,
Objects_Id *id
@@ -91,7 +94,7 @@ rtems_status_code rtems_semaphore_create(
{
register Semaphore_Control *the_semaphore;
- if ( !_Objects_Is_name_valid( name ) )
+ if ( !rtems_is_name_valid( name ) )
return ( RTEMS_INVALID_NAME );
if ( _Attributes_Is_global( attribute_set ) ) {
@@ -147,7 +150,7 @@ rtems_status_code rtems_semaphore_create(
_Thread_queue_Initialize( &the_semaphore->Wait_queue,
attribute_set, STATES_WAITING_FOR_SEMAPHORE );
- _Objects_Open( &_Semaphore_Information, &the_semaphore->Object, name );
+ _Objects_Open( &_Semaphore_Information, &the_semaphore->Object, &name );
*id = the_semaphore->Object.id;
@@ -181,12 +184,12 @@ rtems_status_code rtems_semaphore_create(
*/
rtems_status_code rtems_semaphore_ident(
- Objects_Name name,
+ rtems_name name,
unsigned32 node,
Objects_Id *id
)
{
- return( _Objects_Name_to_id( &_Semaphore_Information, name, node, id ) );
+ return( _Objects_Name_to_id( &_Semaphore_Information, &name, node, id ) );
}
/*PAGE
diff --git a/cpukit/rtems/src/semmp.c b/cpukit/rtems/src/semmp.c
index d131d48150..3be9fafb5f 100644
--- a/cpukit/rtems/src/semmp.c
+++ b/cpukit/rtems/src/semmp.c
@@ -31,7 +31,7 @@
void _Semaphore_MP_Send_process_packet (
Semaphore_MP_Remote_operations operation,
Objects_Id semaphore_id,
- Objects_Name name,
+ rtems_name name,
Objects_Id proxy_id
)
{
@@ -286,7 +286,7 @@ void _Semaphore_MP_Send_extract_proxy (
_Semaphore_MP_Send_process_packet(
SEMAPHORE_MP_EXTRACT_PROXY,
the_thread->Wait.id,
- (Objects_Name) 0,
+ (rtems_name) 0,
the_thread->Object.id
);
diff --git a/cpukit/rtems/src/taskmp.c b/cpukit/rtems/src/taskmp.c
index b938c60c53..17b08011ef 100644
--- a/cpukit/rtems/src/taskmp.c
+++ b/cpukit/rtems/src/taskmp.c
@@ -31,7 +31,7 @@
void _RTEMS_tasks_MP_Send_process_packet (
RTEMS_tasks_MP_Remote_operations operation,
Objects_Id task_id,
- Objects_Name name
+ rtems_name name
)
{
RTEMS_tasks_MP_Packet *the_packet;
diff --git a/cpukit/rtems/src/tasks.c b/cpukit/rtems/src/tasks.c
index e900df0ab8..9cabbc50e9 100644
--- a/cpukit/rtems/src/tasks.c
+++ b/cpukit/rtems/src/tasks.c
@@ -14,6 +14,7 @@
*/
#include <rtems/system.h>
+#include <rtems/support.h>
#include <rtems/modes.h>
#include <rtems/object.h>
#include <rtems/stack.h>
@@ -48,7 +49,7 @@
*/
rtems_status_code rtems_task_create(
- Objects_Name name,
+ rtems_name name,
rtems_task_priority initial_priority,
unsigned32 stack_size,
rtems_mode initial_modes,
@@ -62,7 +63,7 @@ rtems_status_code rtems_task_create(
void *memory;
rtems_attribute the_attribute_set;
- if ( !_Objects_Is_name_valid( name ) )
+ if ( !rtems_is_name_valid( name ) )
return ( RTEMS_INVALID_NAME );
#if 0
@@ -156,7 +157,7 @@ rtems_status_code rtems_task_create(
_ASR_Initialize( &the_thread->Signal );
- _Objects_Open( &_Thread_Information, &the_thread->Object, name );
+ _Objects_Open( &_Thread_Information, &the_thread->Object, &name );
*id = the_thread->Object.id;
@@ -192,13 +193,13 @@ rtems_status_code rtems_task_create(
*/
rtems_status_code rtems_task_ident(
- Objects_Name name,
+ rtems_name name,
unsigned32 node,
Objects_Id *id
)
{
if ( name != OBJECTS_ID_OF_SELF )
- return( _Objects_Name_to_id( &_Thread_Information, name, node, id ) );
+ return( _Objects_Name_to_id( &_Thread_Information, &name, node, id ) );
*id = _Thread_Executing->Object.id;
return( RTEMS_SUCCESSFUL );