summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2014-03-11 14:02:42 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2014-03-12 07:54:57 +0100
commit92d261c2886a36026dc3fe85ca7b7f67dcc7a10c (patch)
treeb076fdd01e8b0e0830ac5dde06e7084d3c4fc9db
parentpsxtests/psxkey07: Account for RTEMS_TOO_MANY (diff)
downloadrtems-92d261c2886a36026dc3fe85ca7b7f67dcc7a10c.tar.bz2
psxtests/psxkey07: Limit workspace size
This avoids large test execution times on targets with a big RAM.
-rw-r--r--testsuites/psxtests/psxkey07/init.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/testsuites/psxtests/psxkey07/init.c b/testsuites/psxtests/psxkey07/init.c
index c25227d6b7..98aeed3078 100644
--- a/testsuites/psxtests/psxkey07/init.c
+++ b/testsuites/psxtests/psxkey07/init.c
@@ -63,6 +63,8 @@ rtems_task Init(rtems_task_argument argument)
rtems_status_code rc;
int sc;
struct timespec delay_request;
+ uintptr_t max_free_size = 13 * RTEMS_MINIMUM_STACK_SIZE;
+ void *greedy;
all_thread_created = 0;
@@ -88,6 +90,9 @@ rtems_task Init(rtems_task_argument argument)
sc = pthread_key_create( &Key, NULL );
rtems_test_assert( !sc );
+ /* Reduce workspace size if necessary to shorten test time */
+ greedy = rtems_workspace_greedy_allocate( &max_free_size, 1 );
+
for ( ; ; ) {
thread_p = malloc( sizeof( rtems_id ) );
rtems_test_assert( thread_p );
@@ -129,6 +134,9 @@ rtems_task Init(rtems_task_argument argument)
pthread_cond_wait( &set_condition_var, &mutex1 );
pthread_mutex_unlock( &mutex1 );
}
+
+ rtems_workspace_greedy_free( greedy );
+
printf(
"Init - %d pthreads have been created - OK\n"
"Init - %d pthreads have been setted key data - OK\n",