Is there no good way to get an estimate of the available workspace size for allocations?
On Tue, Mar 11, 2014 at 8:59 AM, Sebastian Huber <sebastian.hu...@embedded-brains.de> wrote: > This avoids large test execution times on targets with a big RAM. > --- > testsuites/psxtests/psxkey08/init.c | 13 +++++++++---- > 1 files changed, 9 insertions(+), 4 deletions(-) > > diff --git a/testsuites/psxtests/psxkey08/init.c > b/testsuites/psxtests/psxkey08/init.c > index 6c4e2d0..6cfa68f 100644 > --- a/testsuites/psxtests/psxkey08/init.c > +++ b/testsuites/psxtests/psxkey08/init.c > @@ -56,9 +56,10 @@ rtems_task test_task(rtems_task_argument arg) > > rtems_task Init(rtems_task_argument arg) > { > - rtems_status_code status; > - int sc; > - rtems_id *task_id_p; > + rtems_status_code status; > + int sc; > + uintptr_t max_free_size = 13 * RTEMS_MINIMUM_STACK_SIZE; > + void *greedy; > > all_thread_created = 0; > > @@ -89,6 +90,8 @@ rtems_task Init(rtems_task_argument arg) > sc = pthread_key_create( &Key, NULL ); > rtems_test_assert( !sc ); > > + greedy = rtems_workspace_greedy_allocate( &max_free_size, 1 ); > + > for ( ; ; ) { > rtems_id task_id; > > @@ -115,13 +118,15 @@ rtems_task Init(rtems_task_argument arg) > } > ++created_task_count; > > - sc = rtems_task_start( *task_id_p, test_task, 0 ); > + sc = rtems_task_start( task_id, test_task, 0 ); > rtems_test_assert( sc == RTEMS_SUCCESSFUL ); > > sc = rtems_semaphore_obtain( sema1, RTEMS_WAIT, 0 ); > rtems_test_assert( sc == RTEMS_SUCCESSFUL ); > } > > + rtems_workspace_greedy_free( greedy ); > + > printf( > "Init - %d tasks have been created - OK\n" > "Init - %d tasks have been setted key data - OK\n", > -- > 1.7.7 > > _______________________________________________ > rtems-devel mailing list > rtems-devel@rtems.org > http://www.rtems.org/mailman/listinfo/rtems-devel _______________________________________________ rtems-devel mailing list rtems-devel@rtems.org http://www.rtems.org/mailman/listinfo/rtems-devel