summaryrefslogtreecommitdiffstats
path: root/cpukit/score/src
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-06-13 15:06:32 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-06-13 15:06:32 +0000
commitecf0f4c4c18956576aeb69372b93910af7ca37e9 (patch)
treebdc81902ff221b497c67e31822a08dbd69b69a40 /cpukit/score/src
parent2008-06-10 Chris Johns <chrisj@rtems.org> (diff)
downloadrtems-ecf0f4c4c18956576aeb69372b93910af7ca37e9.tar.bz2
2008-06-13 Joel Sherrill <joel.sherrill@oarcorp.com>
* posix/include/rtems/posix/pthread.h, posix/src/pthread.c, posix/src/pthreadcreate.c, rtems/include/rtems.h, rtems/src/attr.c, sapi/include/confdefs.h, sapi/include/rtems/config.h, score/inline/rtems/score/stack.inl, score/src/isr.c, score/src/mpci.c, score/src/threadcreateidle.c, score/src/threadinitialize.c, score/src/threadstackallocate.c: Add ability for application to configure minimum stack size. Add RTEMS_CONFIGURED_MINIMUM_STACK_SIZE constant so user can clearly indicate they want the configured as opposed to the recommended minimum stack size.
Diffstat (limited to 'cpukit/score/src')
-rw-r--r--cpukit/score/src/isr.c2
-rw-r--r--cpukit/score/src/mpci.c2
-rw-r--r--cpukit/score/src/threadcreateidle.c5
-rw-r--r--cpukit/score/src/threadinitialize.c6
-rw-r--r--cpukit/score/src/threadstackallocate.c3
5 files changed, 7 insertions, 11 deletions
diff --git a/cpukit/score/src/isr.c b/cpukit/score/src/isr.c
index d282ebecd6..e6d62a9366 100644
--- a/cpukit/score/src/isr.c
+++ b/cpukit/score/src/isr.c
@@ -48,7 +48,7 @@ void _ISR_Handler_initialization( void )
#if ( CPU_ALLOCATE_INTERRUPT_STACK == TRUE )
- if ( _Configuration_Table->interrupt_stack_size < STACK_MINIMUM_SIZE )
+ if ( !_Stack_Is_enough(_Configuration_Table->interrupt_stack_size) )
_Internal_error_Occurred(
INTERNAL_ERROR_CORE,
TRUE,
diff --git a/cpukit/score/src/mpci.c b/cpukit/score/src/mpci.c
index 058191530d..828ad766e5 100644
--- a/cpukit/score/src/mpci.c
+++ b/cpukit/score/src/mpci.c
@@ -114,7 +114,7 @@ void _MPCI_Create_server( void )
&_Thread_Internal_information,
_MPCI_Receive_server_tcb,
NULL, /* allocate the stack */
- STACK_MINIMUM_SIZE +
+ _Stack_Minimum() +
CPU_MPCI_RECEIVE_SERVER_EXTRA_STACK +
_Configuration_MP_table->extra_mpci_receive_server_stack,
CPU_ALL_TASKS_ARE_FP,
diff --git a/cpukit/score/src/threadcreateidle.c b/cpukit/score/src/threadcreateidle.c
index 3eaff869cf..bcbfcf3039 100644
--- a/cpukit/score/src/threadcreateidle.c
+++ b/cpukit/score/src/threadcreateidle.c
@@ -64,9 +64,8 @@ void _Thread_Create_idle( void )
if ( _Configuration_Table->idle_task )
idle = _Configuration_Table->idle_task;
- idle_task_stack_size = _Configuration_Table->idle_task_stack_size;
- if ( idle_task_stack_size < STACK_MINIMUM_SIZE )
- idle_task_stack_size = STACK_MINIMUM_SIZE;
+ idle_task_stack_size =
+ _Stack_Ensure_minimum( _Configuration_Table->idle_task_stack_size );
/*
* This is only called during initialization and we better be sure
diff --git a/cpukit/score/src/threadinitialize.c b/cpukit/score/src/threadinitialize.c
index 2956cf42ed..eb4df83e50 100644
--- a/cpukit/score/src/threadinitialize.c
+++ b/cpukit/score/src/threadinitialize.c
@@ -75,10 +75,8 @@ boolean _Thread_Initialize(
if ( !stack_area ) {
- if ( !_Stack_Is_enough( stack_size ) )
- actual_stack_size = STACK_MINIMUM_SIZE;
- else
- actual_stack_size = stack_size;
+
+ actual_stack_size = _Stack_Ensure_minimum( stack_size );
actual_stack_size = _Thread_Stack_Allocate( the_thread, actual_stack_size );
diff --git a/cpukit/score/src/threadstackallocate.c b/cpukit/score/src/threadstackallocate.c
index b0b131bfc8..86ae78c4cc 100644
--- a/cpukit/score/src/threadstackallocate.c
+++ b/cpukit/score/src/threadstackallocate.c
@@ -49,8 +49,7 @@ size_t _Thread_Stack_Allocate(
void *stack_addr = 0;
size_t the_stack_size = stack_size;
- if ( !_Stack_Is_enough( the_stack_size ) )
- the_stack_size = STACK_MINIMUM_SIZE;
+ the_stack_size = _Stack_Ensure_minimum( stack_size );
/*
* Call ONLY the CPU table stack allocate hook, _or_ the