From 5a36154a60ce528d331602469ffea4ca4b9a0ea1 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Mon, 22 Apr 1996 16:53:05 +0000 Subject: addition of optional user provided stack allocator means that we can not reliably produce the "insufficient memory for stack space" error if this extension is configured. --- testsuites/sptests/sp09/screen03.c | 41 +++++++++++++++++++++++++------------- 1 file changed, 27 insertions(+), 14 deletions(-) (limited to 'testsuites/sptests') diff --git a/testsuites/sptests/sp09/screen03.c b/testsuites/sptests/sp09/screen03.c index 545b6c1bab..eecab6066a 100644 --- a/testsuites/sptests/sp09/screen03.c +++ b/testsuites/sptests/sp09/screen03.c @@ -20,6 +20,7 @@ #include "system.h" extern rtems_configuration_table BSP_Configuration; +extern rtems_cpu_table _CPU_Table; void Screen3() { @@ -42,20 +43,32 @@ void Screen3() ); puts( "TA1 - rtems_task_create - RTEMS_INVALID_NAME" ); - status = rtems_task_create( - task_name, - 1, - BSP_Configuration.work_space_size, - RTEMS_DEFAULT_MODES, - RTEMS_DEFAULT_ATTRIBUTES, - &Junk_id - ); - fatal_directive_status( - status, - RTEMS_UNSATISFIED, - "rtems_task_create with a stack size larger than the workspace" - ); - puts( "TA1 - rtems_task_create - stack size - RTEMS_UNSATISFIED" ); + /* + * If the bsp provides its own stack allocator, then + * skip the test that tries to allocate a stack that is too big. + */ + + if (_CPU_Table.stack_allocate_hook) + { + puts( "TA1 - rtems_task_create - stack size - RTEMS_UNSATISFIED -- SKIPPED" ); + } + else + { + status = rtems_task_create( + task_name, + 1, + BSP_Configuration.work_space_size, + RTEMS_DEFAULT_MODES, + RTEMS_DEFAULT_ATTRIBUTES, + &Junk_id + ); + fatal_directive_status( + status, + RTEMS_UNSATISFIED, + "rtems_task_create with a stack size larger than the workspace" + ); + puts( "TA1 - rtems_task_create - stack size - RTEMS_UNSATISFIED" ); + } status = rtems_task_create( Task_name[ 2 ], -- cgit v1.2.3