[rtems commit] score: Delete _Thread_Maximum_extensions

Sebastian Huber sebh at rtems.org
Mon Apr 7 14:42:12 UTC 2014


Module:    rtems
Branch:    master
Commit:    47445846984a51dbc7892413a04994586ae0220a
Changeset: http://git.rtems.org/rtems/commit/?id=47445846984a51dbc7892413a04994586ae0220a

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Fri Apr  4 13:43:15 2014 +0200

score: Delete _Thread_Maximum_extensions

Use the Configuration instead.

---

 cpukit/score/include/rtems/score/threadimpl.h |    7 -------
 cpukit/score/src/thread.c                     |    4 ----
 cpukit/score/src/threadinitialize.c           |   13 ++++++-------
 testsuites/sptests/spsize/size.c              |    1 -
 4 files changed, 6 insertions(+), 19 deletions(-)

diff --git a/cpukit/score/include/rtems/score/threadimpl.h b/cpukit/score/include/rtems/score/threadimpl.h
index 6d4ca9f..f109d39 100644
--- a/cpukit/score/include/rtems/score/threadimpl.h
+++ b/cpukit/score/include/rtems/score/threadimpl.h
@@ -58,13 +58,6 @@ SCORE_EXTERN void *rtems_ada_self;
 SCORE_EXTERN Objects_Information _Thread_Internal_information;
 
 /**
- *  The following holds how many user extensions are in the system.  This
- *  is used to determine how many user extension data areas to allocate
- *  per thread.
- */
-SCORE_EXTERN uint32_t   _Thread_Maximum_extensions;
-
-/**
  *  The following is used to manage the length of a timeslice quantum.
  */
 SCORE_EXTERN uint32_t   _Thread_Ticks_per_timeslice;
diff --git a/cpukit/score/src/thread.c b/cpukit/score/src/thread.c
index 5063c78..589e474 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 cf96c24..22f1b43 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
diff --git a/testsuites/sptests/spsize/size.c b/testsuites/sptests/spsize/size.c
index f24bc9b..1d4c96b 100644
--- a/testsuites/sptests/spsize/size.c
+++ b/testsuites/sptests/spsize/size.c
@@ -385,7 +385,6 @@ uninitialized =
 /*tasksimpl.h*/ (sizeof _RTEMS_tasks_Information)         +
 
 /*thread.h*/    (sizeof _Thread_Dispatch_disable_level)   +
-                (sizeof _Thread_Maximum_extensions)       +
                 (sizeof _Thread_Ticks_per_timeslice)      +
                 (sizeof _Thread_Executing)                +
                 (sizeof _Thread_Heir)                     +




More information about the vc mailing list