2009-08-01 Joel Sherrill <joel.sherrill@oarcorp.com>

* psx07/init.c, psx07/psx07.scn, psx07/task.c: Add test for budget and
	replenish period of zero.
This commit is contained in:
Joel Sherrill
2009-08-01 21:47:09 +00:00
parent fb29a8de4a
commit c9c05a02e5
4 changed files with 213 additions and 188 deletions

View File

@@ -1,3 +1,8 @@
2009-08-01 Joel Sherrill <joel.sherrill@oarcorp.com>
* psx07/init.c, psx07/psx07.scn, psx07/task.c: Add test for budget and
replenish period of zero.
2009-07-30 Joel Sherrill <joel.sherrill@OARcorp.com> 2009-07-30 Joel Sherrill <joel.sherrill@OARcorp.com>
* Makefile.am, configure.ac: Add new test to account for properly * Makefile.am, configure.ac: Add new test to account for properly

View File

@@ -67,32 +67,32 @@ void *POSIX_Init(
/* exercise init and destroy */ /* exercise init and destroy */
puts( "Init: pthread_attr_init - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_init - EINVAL (NULL attr)" );
status = pthread_attr_init( NULL ); status = pthread_attr_init( NULL );
fatal_directive_check_status_only( status, EINVAL, "null attribute" ); fatal_directive_check_status_only( status, EINVAL, "null attribute" );
puts( "Init: pthread_attr_init - SUCCESSFUL" ); puts( "Init - pthread_attr_init - SUCCESSFUL" );
status = pthread_attr_init( &attr ); status = pthread_attr_init( &attr );
posix_service_failed( status, "pthread_attr_init" ); posix_service_failed( status, "pthread_attr_init" );
puts( "Init: initialize and destroy an attribute - SUCCESSFUL" ); puts( "Init - initialize and destroy an attribute - SUCCESSFUL" );
status = pthread_attr_init( &destroyed_attr ); status = pthread_attr_init( &destroyed_attr );
posix_service_failed( status, "pthread_attr_init"); posix_service_failed( status, "pthread_attr_init");
status = pthread_attr_destroy( &destroyed_attr ); status = pthread_attr_destroy( &destroyed_attr );
posix_service_failed( status, "pthread_attr_destroy"); posix_service_failed( status, "pthread_attr_destroy");
puts( "Init: pthread_attr_destroy - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_destroy - EINVAL (NULL attr)" );
status = pthread_attr_destroy( NULL ); status = pthread_attr_destroy( NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL attribute" ); fatal_directive_check_status_only( status, EINVAL, "NULL attribute" );
puts( "Init: pthread_attr_destroy - EINVAL (not initialized)" ); puts( "Init - pthread_attr_destroy - EINVAL (not initialized)" );
status = pthread_attr_destroy( &destroyed_attr ); status = pthread_attr_destroy( &destroyed_attr );
fatal_directive_check_status_only( status, EINVAL, "not initialized" ); fatal_directive_check_status_only( status, EINVAL, "not initialized" );
/* check some errors in pthread_create */ /* check some errors in pthread_create */
puts( "Init: pthread_create - EINVAL (attr not initialized)" ); puts( "Init - pthread_create - EINVAL (attr not initialized)" );
status = pthread_create( &Task_id, &destroyed_attr, Task_1, NULL ); status = pthread_create( &Task_id, &destroyed_attr, Task_1, NULL );
fatal_directive_check_status_only( status, EINVAL, "attribute not initialized" ); fatal_directive_check_status_only( status, EINVAL, "attribute not initialized" );
@@ -103,7 +103,7 @@ void *POSIX_Init(
/* must go around pthread_attr_setstacksize to set a bad stack size */ /* must go around pthread_attr_setstacksize to set a bad stack size */
attr.stacksize = 0; attr.stacksize = 0;
puts( "Init: pthread_create - EINVAL (stacksize too small)" ); puts( "Init - pthread_create - EINVAL (stacksize too small)" );
status = pthread_create( &Task_id, &attr, Task_1, NULL ); status = pthread_create( &Task_id, &attr, Task_1, NULL );
fatal_directive_check_status_only( status, EINVAL, "stacksize too small" ); fatal_directive_check_status_only( status, EINVAL, "stacksize too small" );
@@ -112,7 +112,7 @@ void *POSIX_Init(
posix_service_failed( status, "pthread_attr_init"); posix_service_failed( status, "pthread_attr_init");
attr.stacksize = rtems_configuration_get_work_space_size() * 10; attr.stacksize = rtems_configuration_get_work_space_size() * 10;
puts( "Init: pthread_create - EAGAIN (stacksize too large)" ); puts( "Init - pthread_create - EAGAIN (stacksize too large)" );
status = pthread_create( &Task_id, &attr, Task_1, NULL ); status = pthread_create( &Task_id, &attr, Task_1, NULL );
fatal_directive_check_status_only( status, EAGAIN, "stacksize too large" ); fatal_directive_check_status_only( status, EAGAIN, "stacksize too large" );
@@ -122,7 +122,7 @@ void *POSIX_Init(
/* must go around pthread_attr_set routines to set a bad value */ /* must go around pthread_attr_set routines to set a bad value */
attr.inheritsched = -1; attr.inheritsched = -1;
puts( "Init: pthread_create - EINVAL (invalid inherit scheduler)" ); puts( "Init - pthread_create - EINVAL (invalid inherit scheduler)" );
status = pthread_create( &Task_id, &attr, Task_1, NULL ); status = pthread_create( &Task_id, &attr, Task_1, NULL );
fatal_directive_check_status_only( status, EINVAL, "invalid inherit scheduler" ); fatal_directive_check_status_only( status, EINVAL, "invalid inherit scheduler" );
@@ -132,31 +132,31 @@ void *POSIX_Init(
posix_service_failed( status, " pthread_attr_init"); posix_service_failed( status, " pthread_attr_init");
/* Check out pthread_attr_settime and pthread_attr_gettime */ /* Check out pthread_attr_settime and pthread_attr_gettime */
puts( "Init: pthread_attr_settime - EINVAL ( null attribute )" ); puts( "Init - pthread_attr_settime - EINVAL ( null attribute )" );
status = pthread_attr_setcputime( NULL, CLOCK_ENABLED ); status = pthread_attr_setcputime( NULL, CLOCK_ENABLED );
fatal_directive_check_status_only( status, EINVAL, "null attribute" ); fatal_directive_check_status_only( status, EINVAL, "null attribute" );
puts( "Init: pthread_attr_gettime - EINVAL ( null attribute )" ); puts( "Init - pthread_attr_gettime - EINVAL ( null attribute )" );
status = pthread_attr_getcputime( NULL, &clock_allowed ); status = pthread_attr_getcputime( NULL, &clock_allowed );
fatal_directive_check_status_only( status, EINVAL, " null attribute" ); fatal_directive_check_status_only( status, EINVAL, " null attribute" );
puts( "Init: pthread_attr_settime - EINVAL ( is initialized )" ); puts( "Init - pthread_attr_settime - EINVAL ( is initialized )" );
status = pthread_attr_setcputime( &destroyed_attr, CLOCK_ENABLED ); status = pthread_attr_setcputime( &destroyed_attr, CLOCK_ENABLED );
fatal_directive_check_status_only( status, EINVAL, "is initialized" ); fatal_directive_check_status_only( status, EINVAL, "is initialized" );
puts( "Init: pthread_attr_gettime - EINVAL ( is initialized )" ); puts( "Init - pthread_attr_gettime - EINVAL ( is initialized )" );
status = pthread_attr_getcputime( &destroyed_attr, &clock_allowed ); status = pthread_attr_getcputime( &destroyed_attr, &clock_allowed );
fatal_directive_check_status_only( status, EINVAL, "is initialized" ); fatal_directive_check_status_only( status, EINVAL, "is initialized" );
puts( "Init: pthread_attr_settime - EINVAL ( invalid clock allowed )" ); puts( "Init - pthread_attr_settime - EINVAL ( invalid clock allowed )" );
status = pthread_attr_setcputime( &attr, ~(CLOCK_ENABLED | CLOCK_DISABLED) ); status = pthread_attr_setcputime( &attr, ~(CLOCK_ENABLED | CLOCK_DISABLED) );
fatal_directive_check_status_only( status, EINVAL, "invalid clock allowed" ); fatal_directive_check_status_only( status, EINVAL, "invalid clock allowed" );
puts( "Init: pthread_attr_gettime - EINVAL ( NULL clock allowed )" ); puts( "Init - pthread_attr_gettime - EINVAL ( NULL clock allowed )" );
status = pthread_attr_getcputime( &attr, NULL ); status = pthread_attr_getcputime( &attr, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL clock allowed" ); fatal_directive_check_status_only( status, EINVAL, "NULL clock allowed" );
puts( "Init: validate pthread_attr_setcputime - CLOCK_DISABLED" ); puts( "Init - validate pthread_attr_setcputime - CLOCK_DISABLED" );
status = pthread_attr_setcputime( &attr, CLOCK_DISABLED ); status = pthread_attr_setcputime( &attr, CLOCK_DISABLED );
posix_service_failed( status, "pthread_attr_setcputime"); posix_service_failed( status, "pthread_attr_setcputime");
status = pthread_attr_getcputime( &attr, &clock_allowed ); status = pthread_attr_getcputime( &attr, &clock_allowed );
@@ -164,7 +164,7 @@ void *POSIX_Init(
if (attr.cputime_clock_allowed != CLOCK_DISABLED) if (attr.cputime_clock_allowed != CLOCK_DISABLED)
perror("ERROR==> pthread_attr_setcputime to CLOCK_DISABLED failed"); perror("ERROR==> pthread_attr_setcputime to CLOCK_DISABLED failed");
puts( "Init: validate pthread_attr_setcputime - CLOCK_ENABLED" ); puts( "Init - validate pthread_attr_setcputime - CLOCK_ENABLED" );
status = pthread_attr_setcputime( &attr, CLOCK_ENABLED ); status = pthread_attr_setcputime( &attr, CLOCK_ENABLED );
posix_service_failed( status, "pthread_attr_setcputime"); posix_service_failed( status, "pthread_attr_setcputime");
status = pthread_attr_getcputime( &attr, &clock_allowed ); status = pthread_attr_getcputime( &attr, &clock_allowed );
@@ -175,7 +175,7 @@ void *POSIX_Init(
/* must go around pthread_attr_set routines to set a bad value */ /* must go around pthread_attr_set routines to set a bad value */
attr.contentionscope = PTHREAD_SCOPE_SYSTEM; attr.contentionscope = PTHREAD_SCOPE_SYSTEM;
puts( "Init: pthread_create - ENOTSUP (unsupported system contention scope)" ); puts( "Init - pthread_create - ENOTSUP (unsupported system contention scope)" );
status = pthread_create( &Task_id, &attr, Task_1, NULL ); status = pthread_create( &Task_id, &attr, Task_1, NULL );
fatal_directive_check_status_only( status, ENOTSUP, fatal_directive_check_status_only( status, ENOTSUP,
"unsupported system contention scope" ); "unsupported system contention scope" );
@@ -188,7 +188,7 @@ void *POSIX_Init(
status = pthread_attr_setinheritsched( &attr, PTHREAD_INHERIT_SCHED ); status = pthread_attr_setinheritsched( &attr, PTHREAD_INHERIT_SCHED );
posix_service_failed( status, "pthread_attr_setinheritsched"); posix_service_failed( status, "pthread_attr_setinheritsched");
puts( "Init: pthread_create - SUCCESSFUL (inherit scheduler)" ); puts( "Init - pthread_create - SUCCESSFUL (inherit scheduler)" );
status = pthread_create( &Task_id, &attr, Task_1, NULL ); status = pthread_create( &Task_id, &attr, Task_1, NULL );
posix_service_failed( status, "pthread_create"); posix_service_failed( status, "pthread_create");
@@ -204,265 +204,265 @@ void *POSIX_Init(
status = pthread_attr_init( &attr ); status = pthread_attr_init( &attr );
posix_service_failed( status, "pthread_attr_init"); posix_service_failed( status, "pthread_attr_init");
puts( "Init: pthread_attr_setscope - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_setscope - EINVAL (NULL attr)" );
status = pthread_attr_setscope( NULL, PTHREAD_SCOPE_PROCESS ); status = pthread_attr_setscope( NULL, PTHREAD_SCOPE_PROCESS );
fatal_directive_check_status_only( status, EINVAL , "NULL attr" ); fatal_directive_check_status_only( status, EINVAL , "NULL attr" );
puts( "Init: pthread_attr_setscope - ENOTSUP" ); puts( "Init - pthread_attr_setscope - ENOTSUP" );
status = pthread_attr_setscope( &attr, PTHREAD_SCOPE_SYSTEM ); status = pthread_attr_setscope( &attr, PTHREAD_SCOPE_SYSTEM );
fatal_directive_check_status_only( status, ENOTSUP, "PTHREAD_SCOPE_SYSTEM" ); fatal_directive_check_status_only( status, ENOTSUP, "PTHREAD_SCOPE_SYSTEM" );
puts( "Init: pthread_attr_setscope - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_setscope - EINVAL (not initialized attr)" );
status = pthread_attr_setscope( &destroyed_attr, PTHREAD_SCOPE_PROCESS ); status = pthread_attr_setscope( &destroyed_attr, PTHREAD_SCOPE_PROCESS );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_setscope - EINVAL (invalid scope)" ); puts( "Init - pthread_attr_setscope - EINVAL (invalid scope)" );
status = pthread_attr_setscope( &attr, -1 ); status = pthread_attr_setscope( &attr, -1 );
fatal_directive_check_status_only( status, EINVAL, "invalid scope" ); fatal_directive_check_status_only( status, EINVAL, "invalid scope" );
puts( "Init: pthread_attr_setscope - SUCCESSFUL" ); puts( "Init - pthread_attr_setscope - SUCCESSFUL" );
status = pthread_attr_setscope( &attr, PTHREAD_SCOPE_PROCESS ); status = pthread_attr_setscope( &attr, PTHREAD_SCOPE_PROCESS );
posix_service_failed( status, "pthread_attr_setscope"); posix_service_failed( status, "pthread_attr_setscope");
puts( "Init: pthread_attr_getscope - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_getscope - EINVAL (NULL attr)" );
status = pthread_attr_getscope( NULL, &scope ); status = pthread_attr_getscope( NULL, &scope );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_getscope - EINVAL (NULL scope)" ); puts( "Init - pthread_attr_getscope - EINVAL (NULL scope)" );
status = pthread_attr_getscope( &attr, NULL ); status = pthread_attr_getscope( &attr, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL scope" ); fatal_directive_check_status_only( status, EINVAL, "NULL scope" );
puts( "Init: pthread_attr_getscope - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_getscope - EINVAL (not initialized attr)" );
status = pthread_attr_getscope( &destroyed_attr, &scope ); status = pthread_attr_getscope( &destroyed_attr, &scope );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_getscope - SUCCESSFUL" ); puts( "Init - pthread_attr_getscope - SUCCESSFUL" );
status = pthread_attr_getscope( &attr, &scope ); status = pthread_attr_getscope( &attr, &scope );
posix_service_failed( status, "pthread_attr_getscope"); posix_service_failed( status, "pthread_attr_getscope");
printf( "Init: current scope attribute = %d\n", scope ); printf( "Init - current scope attribute = %d\n", scope );
/* exercise get and set inherit scheduler */ /* exercise get and set inherit scheduler */
empty_line(); empty_line();
puts( "Init: pthread_attr_setinheritsched - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_setinheritsched - EINVAL (NULL attr)" );
status = pthread_attr_setinheritsched( NULL, PTHREAD_INHERIT_SCHED ); status = pthread_attr_setinheritsched( NULL, PTHREAD_INHERIT_SCHED );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_setinheritsched - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_setinheritsched - EINVAL (not initialized attr)" );
status = status =
pthread_attr_setinheritsched( &destroyed_attr, PTHREAD_INHERIT_SCHED ); pthread_attr_setinheritsched( &destroyed_attr, PTHREAD_INHERIT_SCHED );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_setinheritsched - ENOTSUP (invalid inheritsched)" ); puts( "Init - pthread_attr_setinheritsched - ENOTSUP (invalid inheritsched)" );
status = pthread_attr_setinheritsched( &attr, -1 ); status = pthread_attr_setinheritsched( &attr, -1 );
fatal_directive_check_status_only( status, ENOTSUP, "invalid inheritsched" ); fatal_directive_check_status_only( status, ENOTSUP, "invalid inheritsched" );
puts( "Init: pthread_attr_setinheritsched - SUCCESSFUL" ); puts( "Init - pthread_attr_setinheritsched - SUCCESSFUL" );
status = pthread_attr_setinheritsched( &attr, PTHREAD_INHERIT_SCHED ); status = pthread_attr_setinheritsched( &attr, PTHREAD_INHERIT_SCHED );
posix_service_failed( status, "pthread_attr_setinheritsched"); posix_service_failed( status, "pthread_attr_setinheritsched");
puts( "Init: pthread_attr_getinheritsched - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_getinheritsched - EINVAL (NULL attr)" );
status = pthread_attr_getinheritsched( NULL, &inheritsched ); status = pthread_attr_getinheritsched( NULL, &inheritsched );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_getinheritsched - EINVAL (NULL inheritsched)" ); puts( "Init - pthread_attr_getinheritsched - EINVAL (NULL inheritsched)" );
status = pthread_attr_getinheritsched( &attr, NULL ); status = pthread_attr_getinheritsched( &attr, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL inheritsched" ); fatal_directive_check_status_only( status, EINVAL, "NULL inheritsched" );
puts( "Init: pthread_attr_getinheritsched - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_getinheritsched - EINVAL (not initialized attr)" );
status = pthread_attr_getinheritsched( &destroyed_attr, &inheritsched ); status = pthread_attr_getinheritsched( &destroyed_attr, &inheritsched );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_getinheritsched - SUCCESSFUL" ); puts( "Init - pthread_attr_getinheritsched - SUCCESSFUL" );
status = pthread_attr_getinheritsched( &attr, &inheritsched ); status = pthread_attr_getinheritsched( &attr, &inheritsched );
posix_service_failed( status, "pthread_attr_getinheritsched"); posix_service_failed( status, "pthread_attr_getinheritsched");
printf( "Init: current inherit scheduler attribute = %d\n", inheritsched ); printf( "Init - current inherit scheduler attribute = %d\n", inheritsched );
/* exercise get and set inherit scheduler */ /* exercise get and set inherit scheduler */
empty_line(); empty_line();
puts( "Init: pthread_attr_setschedpolicy - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_setschedpolicy - EINVAL (NULL attr)" );
status = pthread_attr_setschedpolicy( NULL, SCHED_FIFO ); status = pthread_attr_setschedpolicy( NULL, SCHED_FIFO );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_setschedpolicy - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_setschedpolicy - EINVAL (not initialized attr)" );
status = status =
pthread_attr_setschedpolicy( &destroyed_attr, SCHED_OTHER ); pthread_attr_setschedpolicy( &destroyed_attr, SCHED_OTHER );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_setschedpolicy - ENOTSUP (invalid schedpolicy)" ); puts( "Init - pthread_attr_setschedpolicy - ENOTSUP (invalid schedpolicy)" );
status = pthread_attr_setschedpolicy( &attr, -1 ); status = pthread_attr_setschedpolicy( &attr, -1 );
fatal_directive_check_status_only( status, ENOTSUP, "invalid schedpolicy" ); fatal_directive_check_status_only( status, ENOTSUP, "invalid schedpolicy" );
puts( "Init: pthread_attr_setschedpolicy - SUCCESSFUL" ); puts( "Init - pthread_attr_setschedpolicy - SUCCESSFUL" );
status = pthread_attr_setschedpolicy( &attr, SCHED_RR ); status = pthread_attr_setschedpolicy( &attr, SCHED_RR );
posix_service_failed( status, "pthread_attr_setschedpolicy"); posix_service_failed( status, "pthread_attr_setschedpolicy");
puts( "Init: pthread_attr_getschedpolicy - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_getschedpolicy - EINVAL (NULL attr)" );
status = pthread_attr_getschedpolicy( NULL, &schedpolicy ); status = pthread_attr_getschedpolicy( NULL, &schedpolicy );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_getschedpolicy - EINVAL (NULL schedpolicy)" ); puts( "Init - pthread_attr_getschedpolicy - EINVAL (NULL schedpolicy)" );
status = pthread_attr_getschedpolicy( &attr, NULL ); status = pthread_attr_getschedpolicy( &attr, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL schedpolicy" ); fatal_directive_check_status_only( status, EINVAL, "NULL schedpolicy" );
puts( "Init: pthread_attr_getschedpolicy - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_getschedpolicy - EINVAL (not initialized attr)" );
status = pthread_attr_getschedpolicy( &destroyed_attr, &schedpolicy ); status = pthread_attr_getschedpolicy( &destroyed_attr, &schedpolicy );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_getschedpolicy - SUCCESSFUL" ); puts( "Init - pthread_attr_getschedpolicy - SUCCESSFUL" );
status = pthread_attr_getschedpolicy( &attr, &schedpolicy ); status = pthread_attr_getschedpolicy( &attr, &schedpolicy );
posix_service_failed( status, "pthread_attr_getschedpolicy"); posix_service_failed( status, "pthread_attr_getschedpolicy");
printf( "Init: current scheduler policy attribute = %d\n", schedpolicy ); printf( "Init - current scheduler policy attribute = %d\n", schedpolicy );
/* exercise get and set stack size */ /* exercise get and set stack size */
empty_line(); empty_line();
puts( "Init: pthread_attr_setstacksize - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_setstacksize - EINVAL (NULL attr)" );
status = pthread_attr_setstacksize( NULL, 0 ); status = pthread_attr_setstacksize( NULL, 0 );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_setstacksize - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_setstacksize - EINVAL (not initialized attr)" );
status = status =
pthread_attr_setstacksize( &destroyed_attr, 0 ); pthread_attr_setstacksize( &destroyed_attr, 0 );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_setstacksize - SUCCESSFUL (low stacksize)" ); puts( "Init - pthread_attr_setstacksize - SUCCESSFUL (low stacksize)" );
status = pthread_attr_setstacksize( &attr, 0 ); status = pthread_attr_setstacksize( &attr, 0 );
posix_service_failed( status, "pthread_attr_setstacksize"); posix_service_failed( status, "pthread_attr_setstacksize");
puts( "Init: pthread_attr_setstacksize - SUCCESSFUL (high stacksize)" ); puts( "Init - pthread_attr_setstacksize - SUCCESSFUL (high stacksize)" );
status = pthread_attr_setstacksize( &attr, STACK_MINIMUM_SIZE * 2 ); status = pthread_attr_setstacksize( &attr, STACK_MINIMUM_SIZE * 2 );
posix_service_failed( status, ""); posix_service_failed( status, "");
puts( "Init: pthread_attr_getstacksize - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_getstacksize - EINVAL (NULL attr)" );
status = pthread_attr_getstacksize( NULL, &stacksize ); status = pthread_attr_getstacksize( NULL, &stacksize );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_getstacksize - EINVAL (NULL stacksize)" ); puts( "Init - pthread_attr_getstacksize - EINVAL (NULL stacksize)" );
status = pthread_attr_getstacksize( &attr, NULL ); status = pthread_attr_getstacksize( &attr, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL stacksize" ); fatal_directive_check_status_only( status, EINVAL, "NULL stacksize" );
puts( "Init: pthread_attr_getstacksize - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_getstacksize - EINVAL (not initialized attr)" );
status = pthread_attr_getstacksize( &destroyed_attr, &stacksize ); status = pthread_attr_getstacksize( &destroyed_attr, &stacksize );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_getstacksize - SUCCESSFUL" ); puts( "Init - pthread_attr_getstacksize - SUCCESSFUL" );
status = pthread_attr_getstacksize( &attr, &stacksize ); status = pthread_attr_getstacksize( &attr, &stacksize );
posix_service_failed( status, "pthread_attr_getstacksize"); posix_service_failed( status, "pthread_attr_getstacksize");
if ( stacksize == (STACK_MINIMUM_SIZE * 2) ) if ( stacksize == (STACK_MINIMUM_SIZE * 2) )
printf( "Init: current stack size attribute is OK\n" ); printf( "Init - current stack size attribute is OK\n" );
/* exercise get and set stack address */ /* exercise get and set stack address */
empty_line(); empty_line();
puts( "Init: pthread_attr_setstackaddr - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_setstackaddr - EINVAL (NULL attr)" );
status = pthread_attr_setstackaddr( NULL, NULL ); status = pthread_attr_setstackaddr( NULL, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_setstackaddr - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_setstackaddr - EINVAL (not initialized attr)" );
status = status =
pthread_attr_setstackaddr( &destroyed_attr, NULL ); pthread_attr_setstackaddr( &destroyed_attr, NULL );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_setstackaddr - SUCCESSFUL" ); puts( "Init - pthread_attr_setstackaddr - SUCCESSFUL" );
status = pthread_attr_setstackaddr( &attr, 0 ); status = pthread_attr_setstackaddr( &attr, 0 );
posix_service_failed( status, ""); posix_service_failed( status, "");
puts( "Init: pthread_attr_getstackaddr - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_getstackaddr - EINVAL (NULL attr)" );
status = pthread_attr_getstackaddr( NULL, &stackaddr ); status = pthread_attr_getstackaddr( NULL, &stackaddr );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_getstackaddr - EINVAL (NULL stackaddr)" ); puts( "Init - pthread_attr_getstackaddr - EINVAL (NULL stackaddr)" );
status = pthread_attr_getstackaddr( &attr, NULL ); status = pthread_attr_getstackaddr( &attr, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL stackaddr" ); fatal_directive_check_status_only( status, EINVAL, "NULL stackaddr" );
puts( "Init: pthread_attr_getstackaddr - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_getstackaddr - EINVAL (not initialized attr)" );
status = pthread_attr_getstackaddr( &destroyed_attr, &stackaddr ); status = pthread_attr_getstackaddr( &destroyed_attr, &stackaddr );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_getstackaddr - SUCCESSFUL" ); puts( "Init - pthread_attr_getstackaddr - SUCCESSFUL" );
status = pthread_attr_getstackaddr( &attr, &stackaddr ); status = pthread_attr_getstackaddr( &attr, &stackaddr );
posix_service_failed( status, "pthread_attr_getstackaddr"); posix_service_failed( status, "pthread_attr_getstackaddr");
printf( "Init: current stack address attribute = %p\n", stackaddr ); printf( "Init - current stack address attribute = %p\n", stackaddr );
/* exercise get and set detach state */ /* exercise get and set detach state */
empty_line(); empty_line();
puts( "Init: pthread_attr_setdetachstate - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_setdetachstate - EINVAL (NULL attr)" );
status = pthread_attr_setdetachstate( NULL, PTHREAD_CREATE_DETACHED ); status = pthread_attr_setdetachstate( NULL, PTHREAD_CREATE_DETACHED );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_setdetachstate - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_setdetachstate - EINVAL (not initialized attr)" );
status = status =
pthread_attr_setdetachstate( &destroyed_attr, PTHREAD_CREATE_JOINABLE ); pthread_attr_setdetachstate( &destroyed_attr, PTHREAD_CREATE_JOINABLE );
fatal_directive_check_status_only( status, EINVAL, "not initialized att" ); fatal_directive_check_status_only( status, EINVAL, "not initialized att" );
puts( "Init: pthread_attr_setdetachstate - EINVAL (invalid detachstate)" ); puts( "Init - pthread_attr_setdetachstate - EINVAL (invalid detachstate)" );
status = pthread_attr_setdetachstate( &attr, -1 ); status = pthread_attr_setdetachstate( &attr, -1 );
fatal_directive_check_status_only( status, EINVAL, "invalid detachstate" ); fatal_directive_check_status_only( status, EINVAL, "invalid detachstate" );
puts( "Init: pthread_attr_setdetachstate - SUCCESSFUL" ); puts( "Init - pthread_attr_setdetachstate - SUCCESSFUL" );
status = pthread_attr_setdetachstate( &attr, PTHREAD_CREATE_JOINABLE ); status = pthread_attr_setdetachstate( &attr, PTHREAD_CREATE_JOINABLE );
posix_service_failed( status, "pthread_attr_setdetachstate"); posix_service_failed( status, "pthread_attr_setdetachstate");
puts( "Init: pthread_attr_getdetachstate - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_getdetachstate - EINVAL (NULL attr)" );
status = pthread_attr_getdetachstate( NULL, &detachstate ); status = pthread_attr_getdetachstate( NULL, &detachstate );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_getdetachstate - EINVAL (NULL detatchstate)" ); puts( "Init - pthread_attr_getdetachstate - EINVAL (NULL detatchstate)" );
status = pthread_attr_getdetachstate( &attr, NULL ); status = pthread_attr_getdetachstate( &attr, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL detatchstate" ); fatal_directive_check_status_only( status, EINVAL, "NULL detatchstate" );
puts( "Init: pthread_attr_getdetachstate - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_getdetachstate - EINVAL (not initialized attr)" );
status = pthread_attr_getdetachstate( &destroyed_attr, &detachstate ); status = pthread_attr_getdetachstate( &destroyed_attr, &detachstate );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_getdetachstate - SUCCESSFUL" ); puts( "Init - pthread_attr_getdetachstate - SUCCESSFUL" );
status = pthread_attr_getdetachstate( &attr, &detachstate ); status = pthread_attr_getdetachstate( &attr, &detachstate );
posix_service_failed( status, "pthread_attr_getdetachstate"); posix_service_failed( status, "pthread_attr_getdetachstate");
printf( "Init: current detach state attribute = %d\n", detachstate ); printf( "Init - current detach state attribute = %d\n", detachstate );
/* exercise get and set scheduling parameters */ /* exercise get and set scheduling parameters */
empty_line(); empty_line();
puts( "Init: pthread_attr_getschedparam - SUCCESSFUL" ); puts( "Init - pthread_attr_getschedparam - SUCCESSFUL" );
status = pthread_attr_getschedparam( &attr, &schedparam ); status = pthread_attr_getschedparam( &attr, &schedparam );
posix_service_failed( status, "pthread_attr_getschedparam"); posix_service_failed( status, "pthread_attr_getschedparam");
print_schedparam( "Init: ", &schedparam ); print_schedparam( "Init - ", &schedparam );
puts( "Init: pthread_attr_setschedparam - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_setschedparam - EINVAL (NULL attr)" );
status = pthread_attr_setschedparam( NULL, &schedparam ); status = pthread_attr_setschedparam( NULL, &schedparam );
fatal_directive_check_status_only( status, EINVAL, "NULL attr" ); fatal_directive_check_status_only( status, EINVAL, "NULL attr" );
puts( "Init: pthread_attr_setschedparam - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_setschedparam - EINVAL (not initialized attr)" );
status = pthread_attr_setschedparam( &destroyed_attr, &schedparam ); status = pthread_attr_setschedparam( &destroyed_attr, &schedparam );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_setschedparam - EINVAL (NULL schedparam)" ); puts( "Init - pthread_attr_setschedparam - EINVAL (NULL schedparam)" );
status = pthread_attr_setschedparam( &attr, NULL ); status = pthread_attr_setschedparam( &attr, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL schedparam" ); fatal_directive_check_status_only( status, EINVAL, "NULL schedparam" );
puts( "Init: pthread_attr_setschedparam - SUCCESSFUL" ); puts( "Init - pthread_attr_setschedparam - SUCCESSFUL" );
status = pthread_attr_setschedparam( &attr, &schedparam ); status = pthread_attr_setschedparam( &attr, &schedparam );
posix_service_failed( status, "pthread_attr_setschedparam"); posix_service_failed( status, "pthread_attr_setschedparam");
puts( "Init: pthread_attr_getschedparam - EINVAL (NULL attr)" ); puts( "Init - pthread_attr_getschedparam - EINVAL (NULL attr)" );
status = pthread_attr_getschedparam( NULL, &schedparam ); status = pthread_attr_getschedparam( NULL, &schedparam );
fatal_directive_check_status_only( status, EINVAL, "pthread_attr_getschedparam" ); fatal_directive_check_status_only( status, EINVAL, "pthread_attr_getschedparam" );
puts( "Init: pthread_attr_getschedparam - EINVAL (not initialized attr)" ); puts( "Init - pthread_attr_getschedparam - EINVAL (not initialized attr)" );
status = pthread_attr_getschedparam( &destroyed_attr, &schedparam ); status = pthread_attr_getschedparam( &destroyed_attr, &schedparam );
fatal_directive_check_status_only( status, EINVAL, "not initialized attr" ); fatal_directive_check_status_only( status, EINVAL, "not initialized attr" );
puts( "Init: pthread_attr_getschedparam - EINVAL (NULL schedparam)" ); puts( "Init - pthread_attr_getschedparam - EINVAL (NULL schedparam)" );
status = pthread_attr_getschedparam( &attr, NULL ); status = pthread_attr_getschedparam( &attr, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL schedparam" ); fatal_directive_check_status_only( status, EINVAL, "NULL schedparam" );
@@ -470,37 +470,37 @@ void *POSIX_Init(
empty_line(); empty_line();
puts( "Init: pthread_getschedparam - EINVAL (NULL policy)" ); puts( "Init - pthread_getschedparam - EINVAL (NULL policy)" );
status = pthread_getschedparam( pthread_self(), NULL, &schedparam ); status = pthread_getschedparam( pthread_self(), NULL, &schedparam );
fatal_directive_check_status_only( status, EINVAL, "NULL policy" ); fatal_directive_check_status_only( status, EINVAL, "NULL policy" );
puts( "Init: pthread_getschedparam - EINVAL (NULL schedparam)" ); puts( "Init - pthread_getschedparam - EINVAL (NULL schedparam)" );
status = pthread_getschedparam( pthread_self(), &schedpolicy, NULL ); status = pthread_getschedparam( pthread_self(), &schedpolicy, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL schedparam" ); fatal_directive_check_status_only( status, EINVAL, "NULL schedparam" );
puts( "Init: pthread_getschedparam - ESRCH (bad thread)" ); puts( "Init - pthread_getschedparam - ESRCH (bad thread)" );
status = pthread_getschedparam( (pthread_t) -1, &schedpolicy, &schedparam ); status = pthread_getschedparam( (pthread_t) -1, &schedpolicy, &schedparam );
fatal_directive_check_status_only( status, ESRCH, "bad thread" ); fatal_directive_check_status_only( status, ESRCH, "bad thread" );
puts( "Init: pthread_getschedparam - SUCCESSFUL" ); puts( "Init - pthread_getschedparam - SUCCESSFUL" );
status = pthread_getschedparam( pthread_self(), &schedpolicy, &schedparam ); status = pthread_getschedparam( pthread_self(), &schedpolicy, &schedparam );
posix_service_failed( status, "pthread_getschedparam"); posix_service_failed( status, "pthread_getschedparam");
printf( "Init: policy = %d\n", schedpolicy ); printf( "Init - policy = %d\n", schedpolicy );
print_schedparam( "Init: ", &schedparam ); print_schedparam( "Init - ", &schedparam );
/* exercise pthread_setschedparam */ /* exercise pthread_setschedparam */
empty_line(); empty_line();
puts( "Init: pthread_setschedparam - EINVAL (NULL schedparam)" ); puts( "Init - pthread_setschedparam - EINVAL (NULL schedparam)" );
status = pthread_setschedparam( pthread_self(), SCHED_OTHER, NULL ); status = pthread_setschedparam( pthread_self(), SCHED_OTHER, NULL );
fatal_directive_check_status_only( status, EINVAL, "NULL schedparam" ); fatal_directive_check_status_only( status, EINVAL, "NULL schedparam" );
schedparam.sched_priority = -1; schedparam.sched_priority = -1;
puts( "Init: pthread_setschedparam - EINVAL (invalid priority)" ); puts( "Init - pthread_setschedparam - EINVAL (invalid priority)" );
status = pthread_setschedparam( pthread_self(), SCHED_OTHER, NULL ); status = pthread_setschedparam( pthread_self(), SCHED_OTHER, NULL );
fatal_directive_check_status_only( status, EINVAL, "invalid priority" ); fatal_directive_check_status_only( status, EINVAL, "invalid priority" );
@@ -508,22 +508,40 @@ void *POSIX_Init(
status = pthread_getschedparam( pthread_self(), &schedpolicy, &schedparam ); status = pthread_getschedparam( pthread_self(), &schedpolicy, &schedparam );
posix_service_failed( status, "pthread_getschedparam"); posix_service_failed( status, "pthread_getschedparam");
puts( "Init: pthread_setschedparam - EINVAL (invalid policy)" ); puts( "Init - pthread_setschedparam - EINVAL (invalid policy)" );
status = pthread_setschedparam( pthread_self(), -1, &schedparam ); status = pthread_setschedparam( pthread_self(), -1, &schedparam );
fatal_directive_check_status_only( status, EINVAL, "invalid policy" ); fatal_directive_check_status_only( status, EINVAL, "invalid policy" );
puts( "Init: pthread_setschedparam - ESRCH (invalid thread)" ); puts( "Init - pthread_setschedparam - ESRCH (invalid thread)" );
status = pthread_setschedparam( (pthread_t) -1, SCHED_OTHER, &schedparam ); status = pthread_setschedparam( (pthread_t) -1, SCHED_OTHER, &schedparam );
fatal_directive_check_status_only( status, ESRCH, "invalid thread" ); fatal_directive_check_status_only( status, ESRCH, "invalid thread" );
/* now get sporadic server errors */ /* now get sporadic server errors */
schedparam.ss_replenish_period.tv_sec = 0;
schedparam.ss_replenish_period.tv_nsec = 0;
schedparam.ss_initial_budget.tv_sec = 1;
schedparam.ss_initial_budget.tv_nsec = 1;
puts( "Init - pthread_setschedparam - EINVAL (replenish == 0)" );
status = pthread_setschedparam( pthread_self(), SCHED_SPORADIC, &schedparam );
fatal_directive_check_status_only( status, EINVAL, "replenish == 0" );
schedparam.ss_replenish_period.tv_sec = 1;
schedparam.ss_replenish_period.tv_nsec = 1;
schedparam.ss_initial_budget.tv_sec = 0;
schedparam.ss_initial_budget.tv_nsec = 0;
puts( "Init - pthread_setschedparam - EINVAL (budget == 0)" );
status = pthread_setschedparam( pthread_self(), SCHED_SPORADIC, &schedparam );
fatal_directive_check_status_only( status, EINVAL, "budget == 0" );
schedparam.ss_replenish_period.tv_sec = 1; schedparam.ss_replenish_period.tv_sec = 1;
schedparam.ss_replenish_period.tv_nsec = 0; schedparam.ss_replenish_period.tv_nsec = 0;
schedparam.ss_initial_budget.tv_sec = 1; schedparam.ss_initial_budget.tv_sec = 1;
schedparam.ss_initial_budget.tv_nsec = 1; schedparam.ss_initial_budget.tv_nsec = 1;
puts( "Init: pthread_setschedparam - EINVAL (replenish < budget)" ); puts( "Init - pthread_setschedparam - EINVAL (replenish < budget)" );
status = pthread_setschedparam( pthread_self(), SCHED_SPORADIC, &schedparam ); status = pthread_setschedparam( pthread_self(), SCHED_SPORADIC, &schedparam );
fatal_directive_check_status_only( status, EINVAL, "replenish < budget" ); fatal_directive_check_status_only( status, EINVAL, "replenish < budget" );
@@ -533,7 +551,7 @@ void *POSIX_Init(
schedparam.ss_initial_budget.tv_nsec = 0; schedparam.ss_initial_budget.tv_nsec = 0;
schedparam.ss_low_priority = -1; schedparam.ss_low_priority = -1;
puts( "Init: pthread_setschedparam - EINVAL (invalid priority)" ); puts( "Init - pthread_setschedparam - EINVAL (invalid priority)" );
status = pthread_setschedparam( pthread_self(), SCHED_SPORADIC, &schedparam ); status = pthread_setschedparam( pthread_self(), SCHED_SPORADIC, &schedparam );
fatal_directive_check_status_only( status, EINVAL, "invalid priority" ); fatal_directive_check_status_only( status, EINVAL, "invalid priority" );

View File

@@ -1,96 +1,98 @@
*** POSIX TEST 7 *** *** POSIX TEST 7 ***
Init's ID is 0x0b010001 Init's ID is 0x0b010001
Init: pthread_attr_init - EINVAL (NULL attr) Init - pthread_attr_init - EINVAL (NULL attr)
Init: pthread_attr_init - SUCCESSFUL Init - pthread_attr_init - SUCCESSFUL
Init: initialize and destroy an attribute - SUCCESSFUL Init - initialize and destroy an attribute - SUCCESSFUL
Init: pthread_attr_destroy - EINVAL (NULL attr) Init - pthread_attr_destroy - EINVAL (NULL attr)
Init: pthread_attr_destroy - EINVAL (not initialized) Init - pthread_attr_destroy - EINVAL (not initialized)
Init: pthread_create - EINVAL (attr not initialized) Init - pthread_create - EINVAL (attr not initialized)
Init: pthread_create - EINVAL (stacksize too small) Init - pthread_create - EINVAL (stacksize too small)
Init: pthread_create - EAGAIN (stacksize too large) Init - pthread_create - EAGAIN (stacksize too large)
Init: pthread_create - EINVAL (invalid inherit scheduler) Init - pthread_create - EINVAL (invalid inherit scheduler)
Init: pthread_create - ENOTSUP (unsupported system contention scope) Init - pthread_create - ENOTSUP (unsupported system contention scope)
Init: pthread_create - SUCCESSFUL (inherit scheduler) Init - pthread_create - SUCCESSFUL (inherit scheduler)
Task_1: exitting Task_1 - exitting
Init: pthread_attr_setscope - EINVAL (NULL attr) Init - pthread_attr_setscope - EINVAL (NULL attr)
Init: pthread_attr_setscope - ENOTSUP Init - pthread_attr_setscope - ENOTSUP
Init: pthread_attr_setscope - EINVAL (not initialized attr) Init - pthread_attr_setscope - EINVAL (not initialized attr)
Init: pthread_attr_setscope - EINVAL (invalid scope) Init - pthread_attr_setscope - EINVAL (invalid scope)
Init: pthread_attr_setscope - SUCCESSFUL Init - pthread_attr_setscope - SUCCESSFUL
Init: pthread_attr_getscope - EINVAL (NULL attr) Init - pthread_attr_getscope - EINVAL (NULL attr)
Init: pthread_attr_getscope - EINVAL (NULL scope) Init - pthread_attr_getscope - EINVAL (NULL scope)
Init: pthread_attr_getscope - EINVAL (not initialized attr) Init - pthread_attr_getscope - EINVAL (not initialized attr)
Init: pthread_attr_getscope - SUCCESSFUL Init - pthread_attr_getscope - SUCCESSFUL
Init: current scope attribute = 0 Init - current scope attribute = 0
Init: pthread_attr_setinheritsched - EINVAL (NULL attr) Init - pthread_attr_setinheritsched - EINVAL (NULL attr)
Init: pthread_attr_setinheritsched - EINVAL (not initialized attr) Init - pthread_attr_setinheritsched - EINVAL (not initialized attr)
Init: pthread_attr_setinheritsched - ENOTSUP (invalid inheritsched) Init - pthread_attr_setinheritsched - ENOTSUP (invalid inheritsched)
Init: pthread_attr_setinheritsched - SUCCESSFUL Init - pthread_attr_setinheritsched - SUCCESSFUL
Init: pthread_attr_getinheritsched - EINVAL (NULL attr) Init - pthread_attr_getinheritsched - EINVAL (NULL attr)
Init: pthread_attr_getinheritsched - EINVAL (NULL inheritsched) Init - pthread_attr_getinheritsched - EINVAL (NULL inheritsched)
Init: pthread_attr_getinheritsched - EINVAL (not initialized attr) Init - pthread_attr_getinheritsched - EINVAL (not initialized attr)
Init: pthread_attr_getinheritsched - SUCCESSFUL Init - pthread_attr_getinheritsched - SUCCESSFUL
Init: current inherit scheduler attribute = 1 Init - current inherit scheduler attribute = 1
Init: pthread_attr_setschedpolicy - EINVAL (NULL attr) Init - pthread_attr_setschedpolicy - EINVAL (NULL attr)
Init: pthread_attr_setschedpolicy - EINVAL (not initialized attr) Init - pthread_attr_setschedpolicy - EINVAL (not initialized attr)
Init: pthread_attr_setschedpolicy - ENOTSUP (invalid schedpolicy) Init - pthread_attr_setschedpolicy - ENOTSUP (invalid schedpolicy)
Init: pthread_attr_setschedpolicy - SUCCESSFUL Init - pthread_attr_setschedpolicy - SUCCESSFUL
Init: pthread_attr_getschedpolicy - EINVAL (NULL attr) Init - pthread_attr_getschedpolicy - EINVAL (NULL attr)
Init: pthread_attr_getschedpolicy - EINVAL (NULL schedpolicy) Init - pthread_attr_getschedpolicy - EINVAL (NULL schedpolicy)
Init: pthread_attr_getschedpolicy - EINVAL (not initialized attr) Init - pthread_attr_getschedpolicy - EINVAL (not initialized attr)
Init: pthread_attr_getschedpolicy - SUCCESSFUL Init - pthread_attr_getschedpolicy - SUCCESSFUL
Init: current scheduler policy attribute = 2 Init - current scheduler policy attribute = 2
Init: pthread_attr_setstacksize - EINVAL (NULL attr) Init - pthread_attr_setstacksize - EINVAL (NULL attr)
Init: pthread_attr_setstacksize - EINVAL (not initialized attr) Init - pthread_attr_setstacksize - EINVAL (not initialized attr)
Init: pthread_attr_setstacksize - SUCCESSFUL (low stacksize) Init - pthread_attr_setstacksize - SUCCESSFUL (low stacksize)
Init: pthread_attr_setstacksize - SUCCESSFUL (high stacksize) Init - pthread_attr_setstacksize - SUCCESSFUL (high stacksize)
Init: pthread_attr_getstacksize - EINVAL (NULL attr) Init - pthread_attr_getstacksize - EINVAL (NULL attr)
Init: pthread_attr_getstacksize - EINVAL (NULL stacksize) Init - pthread_attr_getstacksize - EINVAL (NULL stacksize)
Init: pthread_attr_getstacksize - EINVAL (not initialized attr) Init - pthread_attr_getstacksize - EINVAL (not initialized attr)
Init: pthread_attr_getstacksize - SUCCESSFUL Init - pthread_attr_getstacksize - SUCCESSFUL
Init: current stack size attribute is OK Init - current stack size attribute is OK
Init: pthread_attr_setstackaddr - EINVAL (NULL attr) Init - pthread_attr_setstackaddr - EINVAL (NULL attr)
Init: pthread_attr_setstackaddr - EINVAL (not initialized attr) Init - pthread_attr_setstackaddr - EINVAL (not initialized attr)
Init: pthread_attr_setstackaddr - SUCCESSFUL Init - pthread_attr_setstackaddr - SUCCESSFUL
Init: pthread_attr_getstackaddr - EINVAL (NULL attr) Init - pthread_attr_getstackaddr - EINVAL (NULL attr)
Init: pthread_attr_getstackaddr - EINVAL (NULL stackaddr) Init - pthread_attr_getstackaddr - EINVAL (NULL stackaddr)
Init: pthread_attr_getstackaddr - EINVAL (not initialized attr) Init - pthread_attr_getstackaddr - EINVAL (not initialized attr)
Init: pthread_attr_getstackaddr - SUCCESSFUL Init - pthread_attr_getstackaddr - SUCCESSFUL
Init: current stack address attribute = 0x0 Init - current stack address attribute = 0x0
Init: pthread_attr_setdetachstate - EINVAL (NULL attr) Init - pthread_attr_setdetachstate - EINVAL (NULL attr)
Init: pthread_attr_setdetachstate - EINVAL (not initialized attr) Init - pthread_attr_setdetachstate - EINVAL (not initialized attr)
Init: pthread_attr_setdetachstate - EINVAL (invalid detachstate) Init - pthread_attr_setdetachstate - EINVAL (invalid detachstate)
Init: pthread_attr_setdetachstate - SUCCESSFUL Init - pthread_attr_setdetachstate - SUCCESSFUL
Init: pthread_attr_getdetachstate - EINVAL (NULL attr) Init - pthread_attr_getdetachstate - EINVAL (NULL attr)
Init: pthread_attr_getdetachstate - EINVAL (NULL detatchstate) Init - pthread_attr_getdetachstate - EINVAL (NULL detatchstate)
Init: pthread_attr_getdetachstate - EINVAL (not initialized attr) Init - pthread_attr_getdetachstate - EINVAL (not initialized attr)
Init: pthread_attr_getdetachstate - SUCCESSFUL Init - pthread_attr_getdetachstate - SUCCESSFUL
Init: current detach state attribute = 1 Init - current detach state attribute = 1
Init: pthread_attr_getschedparam - SUCCESSFUL Init - pthread_attr_getschedparam - SUCCESSFUL
Init: sched priority = 2 Init - sched priority = 2
Init: ss_low_priority = 0 Init - ss_low_priority = 0
Init: ss_replenish_period = (0, 0) Init - ss_replenish_period = (0, 0)
Init: ss_initial_budget = (0, 0) Init - ss_initial_budget = (0, 0)
Init: pthread_attr_setschedparam - EINVAL (NULL attr) Init - pthread_attr_setschedparam - EINVAL (NULL attr)
Init: pthread_attr_setschedparam - EINVAL (not initialized attr) Init - pthread_attr_setschedparam - EINVAL (not initialized attr)
Init: pthread_attr_setschedparam - EINVAL (NULL schedparam) Init - pthread_attr_setschedparam - EINVAL (NULL schedparam)
Init: pthread_attr_setschedparam - SUCCESSFUL Init - pthread_attr_setschedparam - SUCCESSFUL
Init: pthread_attr_getschedparam - EINVAL (NULL attr) Init - pthread_attr_getschedparam - EINVAL (NULL attr)
Init: pthread_attr_getschedparam - EINVAL (not initialized attr) Init - pthread_attr_getschedparam - EINVAL (not initialized attr)
Init: pthread_attr_getschedparam - EINVAL (NULL schedparam) Init - pthread_attr_getschedparam - EINVAL (NULL schedparam)
Init: pthread_getschedparam - EINVAL (NULL policy) Init - pthread_getschedparam - EINVAL (NULL policy)
Init: pthread_getschedparam - EINVAL (NULL schedparam) Init - pthread_getschedparam - EINVAL (NULL schedparam)
Init: pthread_getschedparam - ESRCH (bad thread) Init - pthread_getschedparam - ESRCH (bad thread)
Init: pthread_getschedparam - SUCCESSFUL Init - pthread_getschedparam - SUCCESSFUL
Init: policy = 1 Init - policy = 1
Init: sched priority = 2 Init - sched priority = 2
Init: ss_low_priority = 0 Init - ss_low_priority = 0
Init: ss_replenish_period = (0, 0) Init - ss_replenish_period = (0, 0)
Init: ss_initial_budget = (0, 0) Init - ss_initial_budget = (0, 0)
Init: pthread_setschedparam - EINVAL (NULL schedparam) Init - pthread_setschedparam - EINVAL (NULL schedparam)
Init: pthread_setschedparam - EINVAL (invalid priority) Init - pthread_setschedparam - EINVAL (invalid priority)
Init: pthread_setschedparam - EINVAL (invalid policy) Init - pthread_setschedparam - EINVAL (invalid policy)
Init: pthread_setschedparam - ESRCH (invalid thread) Init - pthread_setschedparam - ESRCH (invalid thread)
Init: pthread_setschedparam - EINVAL (replenish < budget) Init - pthread_setschedparam - EINVAL (replenish == 0)
Init: pthread_setschedparam - EINVAL (invalid priority) Init - pthread_setschedparam - EINVAL (budget == 0)
Init - pthread_setschedparam - EINVAL (replenish < budget)
Init - pthread_setschedparam - EINVAL (invalid priority)
*** END OF POSIX TEST 7 *** *** END OF POSIX TEST 7 ***

View File

@@ -26,7 +26,7 @@ void *Task_1(
void *argument void *argument
) )
{ {
puts( "Task_1: exitting" ); puts( "Task_1 - exitting" );
pthread_exit( NULL ); pthread_exit( NULL );
return NULL; /* just so the compiler thinks we returned something */ return NULL; /* just so the compiler thinks we returned something */