diff options
Diffstat (limited to 'cpukit/posix/src/pthread.c')
-rw-r--r-- | cpukit/posix/src/pthread.c | 25 |
1 files changed, 3 insertions, 22 deletions
diff --git a/cpukit/posix/src/pthread.c b/cpukit/posix/src/pthread.c index 6f79658677..ab197f3a51 100644 --- a/cpukit/posix/src/pthread.c +++ b/cpukit/posix/src/pthread.c @@ -190,12 +190,7 @@ static bool _POSIX_Threads_Create_extension( POSIX_API_Control *api; POSIX_API_Control *executing_api; - api = _Workspace_Allocate( sizeof( POSIX_API_Control ) ); - - if ( !api ) - return false; - - created->API_Extensions[ THREAD_API_POSIX ] = api; + api = created->API_Extensions[ THREAD_API_POSIX ]; /* XXX check all fields are touched */ _POSIX_Threads_Initialize_attributes( &api->Attributes ); @@ -266,19 +261,6 @@ static void _POSIX_Threads_Restart_extension( _POSIX_Threads_cancel_run( restarted ); } -/* - * _POSIX_Threads_Delete_extension - * - * This method is invoked for each thread deleted. - */ -static void _POSIX_Threads_Delete_extension( - Thread_Control *executing __attribute__((unused)), - Thread_Control *deleted -) -{ - _Workspace_Free( deleted->API_Extensions[ THREAD_API_POSIX ] ); -} - static void _POSIX_Threads_Terminate_extension( Thread_Control *executing ) @@ -355,7 +337,7 @@ User_extensions_Control _POSIX_Threads_User_extensions = { { _POSIX_Threads_Create_extension, /* create */ NULL, /* start */ _POSIX_Threads_Restart_extension, /* restart */ - _POSIX_Threads_Delete_extension, /* delete */ + NULL, /* delete */ NULL, /* switch */ NULL, /* begin */ _POSIX_Threads_Exitted_extension, /* exitted */ @@ -392,8 +374,7 @@ void _POSIX_Threads_Manager_initialization(void) OBJECTS_POSIX_THREADS, /* object class */ Configuration_POSIX_API.maximum_threads, /* maximum objects of this class */ - sizeof( Thread_Control ), - /* size of this object's control block */ + _Thread_Control_size, /* size of this object's control block */ true, /* true if names for this object are strings */ _POSIX_PATH_MAX /* maximum length of each object's name */ #if defined(RTEMS_MULTIPROCESSING) |