diff options
Diffstat (limited to 'cpukit/score/src')
-rw-r--r-- | cpukit/score/src/thread.c | 4 | ||||
-rw-r--r-- | cpukit/score/src/threadinitialize.c | 13 |
2 files changed, 6 insertions, 11 deletions
diff --git a/cpukit/score/src/thread.c b/cpukit/score/src/thread.c index 5063c78c96..589e474733 100644 --- a/cpukit/score/src/thread.c +++ b/cpukit/score/src/thread.c @@ -25,8 +25,6 @@ void _Thread_Handler_initialization(void) { uint32_t ticks_per_timeslice = rtems_configuration_get_ticks_per_timeslice(); - uint32_t maximum_extensions = - rtems_configuration_get_maximum_extensions(); rtems_stack_allocate_init_hook stack_allocate_init_hook = rtems_configuration_get_stack_allocate_init_hook(); #if defined(RTEMS_MULTIPROCESSING) @@ -52,8 +50,6 @@ void _Thread_Handler_initialization(void) _Thread_Allocated_fp = NULL; #endif - _Thread_Maximum_extensions = maximum_extensions; - _Thread_Ticks_per_timeslice = ticks_per_timeslice; #if defined(RTEMS_MULTIPROCESSING) diff --git a/cpukit/score/src/threadinitialize.c b/cpukit/score/src/threadinitialize.c index cf96c24bcd..22f1b43c88 100644 --- a/cpukit/score/src/threadinitialize.c +++ b/cpukit/score/src/threadinitialize.c @@ -155,9 +155,9 @@ bool _Thread_Initialize( /* * Allocate the extensions area for this thread */ - if ( _Thread_Maximum_extensions ) { + if ( rtems_configuration_get_maximum_extensions() ) { extensions_area = _Workspace_Allocate( - (_Thread_Maximum_extensions + 1) * sizeof( void * ) + (rtems_configuration_get_maximum_extensions() + 1) * sizeof( void * ) ); if ( !extensions_area ) goto failed; @@ -169,12 +169,11 @@ bool _Thread_Initialize( * if they are linked to the thread. An extension user may * create the extension long after tasks have been created * so they cannot rely on the thread create user extension - * call. + * call. The object index starts with one, so the first extension context is + * unused. */ - if ( the_thread->extensions ) { - for ( i = 0; i <= _Thread_Maximum_extensions ; i++ ) - the_thread->extensions[i] = NULL; - } + for ( i = 1 ; i <= rtems_configuration_get_maximum_extensions() ; ++i ) + the_thread->extensions[ i ] = NULL; /* * General initialization |