diff options
Diffstat (limited to 'testsuites/psxtests/psx05')
-rw-r--r-- | testsuites/psxtests/psx05/init.c | 569 | ||||
-rw-r--r-- | testsuites/psxtests/psx05/psx05.scn | 111 | ||||
-rw-r--r-- | testsuites/psxtests/psx05/system.h | 67 | ||||
-rw-r--r-- | testsuites/psxtests/psx05/task.c | 58 | ||||
-rw-r--r-- | testsuites/psxtests/psx05/task2.c | 49 | ||||
-rw-r--r-- | testsuites/psxtests/psx05/task3.c | 51 |
6 files changed, 0 insertions, 905 deletions
diff --git a/testsuites/psxtests/psx05/init.c b/testsuites/psxtests/psx05/init.c deleted file mode 100644 index ec79d6db37..0000000000 --- a/testsuites/psxtests/psx05/init.c +++ /dev/null @@ -1,569 +0,0 @@ -/* - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. - * On-Line Applications Research Corporation (OAR). - * All rights assigned to U.S. Government, 1994. - * - * This material may be reproduced by or for the U.S. Government pursuant - * to the copyright license under the clause at DFARS 252.227-7013. This - * notice must appear in all copies of this file and its derivatives. - * - * $Id$ - */ - -#define CONFIGURE_INIT -#include "system.h" -#include <errno.h> - -#define MUTEX_BAD_ID -2 - -void Print_mutexattr( - char *msg, - pthread_mutexattr_t *attr -) -{ - int status; - int protocol; - int prioceiling; - int pshared; - - /* protocol */ - - status = pthread_mutexattr_getprotocol( attr, &protocol ); - assert( !status ); - - printf( "%smutex protocol is (%d) -- ", msg, protocol ); - switch ( protocol ) { - case PTHREAD_PRIO_NONE: - puts( "PTHREAD_PRIO_NONE" ); - break; - case PTHREAD_PRIO_INHERIT: - puts( "PTHREAD_PRIO_INHERIT" ); - break; - case PTHREAD_PRIO_PROTECT: - puts( "PTHREAD_PRIO_PROTECT" ); - break; - default: - puts( "UNKNOWN" ); - assert( 0 ); - break; - } - - /* priority ceiling */ - - status = pthread_mutexattr_getprioceiling( attr, &prioceiling ); - assert( !status ); - printf( "%smutex priority ceiling is %d\n", msg, prioceiling ); - - /* process shared */ - - status = pthread_mutexattr_getpshared( attr, &pshared ); - assert( !status ); - printf( "%smutex process shared is (%d) -- ", msg, pshared ); - switch ( pshared ) { - case PTHREAD_PROCESS_PRIVATE: - puts( "PTHREAD_PROCESS_PRIVATE" ); - break; - case PTHREAD_PROCESS_SHARED: - puts( "PTHREAD_PROCESS_SHARED" ); - break; - default: - puts( "UNKNOWN" ); - assert( 0 ); - break; - } -} - -void *POSIX_Init( - void *argument -) -{ - int status; - pthread_mutexattr_t attr; - pthread_mutexattr_t destroyed_attr; - struct timespec times; - struct sched_param param; - int pshared; - int policy; - int protocol; - int ceiling; - int old_ceiling; - - assert( MUTEX_BAD_ID != PTHREAD_MUTEX_INITIALIZER ); - Mutex_bad_id = MUTEX_BAD_ID; - - puts( "\n\n*** POSIX TEST 5 ***" ); - - /* set the time of day, and print our buffer in multiple ways */ - - set_time( TM_FRIDAY, TM_MAY, 24, 96, 11, 5, 0 ); - - /* get id of this thread */ - - Init_id = pthread_self(); - printf( "Init's ID is 0x%08x\n", Init_id ); - - /* tes pthread_mutex_attr_init */ - - puts( "Init: pthread_mutexattr_init - EINVAL (NULL attr)" ); - status = pthread_mutexattr_init( NULL ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_init - SUCCESSFUL" ); - status = pthread_mutexattr_init( &attr ); - assert( !status ); - - Print_mutexattr( "Init: ", &attr ); - - /* create an "uninitialized" attribute structure */ - - status = pthread_mutexattr_init( &destroyed_attr ); - assert( !status ); - - puts( "Init: pthread_mutexattr_destroy - SUCCESSFUL" ); - status = pthread_mutexattr_destroy( &destroyed_attr ); - assert( !status ); - - puts( "Init: pthread_mutexattr_destroy - EINVAL (NULL attr)" ); - status = pthread_mutexattr_destroy( NULL ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_destroy - EINVAL (not initialized)" ); - status = pthread_mutexattr_destroy( &destroyed_attr ); - assert( status == EINVAL ); - - /* error cases for set and get pshared attribute */ - - empty_line(); - - puts( "Init: pthread_mutexattr_getpshared - EINVAL (NULL attr)" ); - status = pthread_mutexattr_getpshared( NULL, &pshared ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_getpshared - EINVAL (NULL pshared)" ); - status = pthread_mutexattr_getpshared( &attr, NULL ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_getpshared - EINVAL (not initialized)" ); - status = pthread_mutexattr_getpshared( &destroyed_attr, &pshared ); - assert( status == EINVAL ); - - pshared = PTHREAD_PROCESS_PRIVATE; - puts( "Init: pthread_mutexattr_setpshared - EINVAL (NULL attr)" ); - status = pthread_mutexattr_setpshared( NULL, pshared ); - assert( status == EINVAL ); - - pshared = PTHREAD_PROCESS_PRIVATE; - puts( "Init: pthread_mutexattr_setpshared - EINVAL (not initialized)" ); - status = pthread_mutexattr_setpshared( &destroyed_attr, pshared ); - assert( status == EINVAL ); - - /* error cases for set and get protocol attribute */ - - empty_line(); - - puts( "Init: pthread_mutexattr_getprotocol - EINVAL (NULL attr)" ); - status = pthread_mutexattr_getprotocol( NULL, &protocol ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_getprotocol - EINVAL (NULL protocol)" ); - status = pthread_mutexattr_getprotocol( &attr, NULL ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_getprotocol - EINVAL (not initialized)" ); - status = pthread_mutexattr_getprotocol( &destroyed_attr, &protocol ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_setprotocol - EINVAL (NULL attr)" ); - status = pthread_mutexattr_setprotocol( NULL, PTHREAD_PRIO_NONE ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_setprotocol - EINVAL (invalid protocol)" ); - status = pthread_mutexattr_setprotocol( &attr, -1 ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_setprotocol - EINVAL (not initialized)" ); - status = pthread_mutexattr_setprotocol( &destroyed_attr, -1 ); - assert( status == EINVAL ); - - /* error cases for set and get prioceiling attribute */ - - empty_line(); - - puts( "Init: pthread_mutexattr_getprioceiling - EINVAL (NULL attr)" ); - status = pthread_mutexattr_getprioceiling( NULL, &ceiling ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_getprioceiling - EINVAL (NULL prioceiling)" ); - status = pthread_mutexattr_getprioceiling( &attr, NULL ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_getprioceiling - EINVAL (not initialized)" ); - status = pthread_mutexattr_getprioceiling( &destroyed_attr, &ceiling ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_setprioceiling - EINVAL (NULL attr)" ); - status = pthread_mutexattr_setprioceiling( NULL, 128 ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_setprioceiling - EINVAL (invalid priority)" ); - status = pthread_mutexattr_setprioceiling( &attr, 512 ); - if ( status != EINVAL ) - printf( "status = %d\n", status ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutexattr_setprioceiling - EINVAL (not initialized)" ); - status = pthread_mutexattr_setprioceiling( &destroyed_attr, -1 ); - assert( status == EINVAL ); - - /* create a thread */ - - status = pthread_create( &Task_id, NULL, Task_1, NULL ); - assert( !status ); - - /* now try some basic mutex operations */ - - empty_line(); - - puts( "Init: pthread_mutex_init - EINVAL (NULL mutex_id)" ); - status = pthread_mutex_init( NULL, &attr ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutex_init - EINVAL (not initialized attr)" ); - status = pthread_mutex_init( &Mutex_id, &destroyed_attr ); - assert( status == EINVAL ); - - /* must get around error checks in attribute set routines */ - attr.protocol = -1; - - puts( "Init: pthread_mutex_init - EINVAL (bad protocol)" ); - status = pthread_mutex_init( &Mutex_id, &attr ); - assert( status == EINVAL ); - - /* must get around error checks in attribute set routines */ - attr.protocol = PTHREAD_PRIO_INHERIT; - attr.prio_ceiling = -1; - - puts( "Init: pthread_mutex_init - EINVAL (bad priority ceiling)" ); - status = pthread_mutex_init( &Mutex_id, &attr ); - assert( status == EINVAL ); - - /* now set up for a success pthread_mutex_init */ - - puts( "Init: Resetting mutex attributes" ); - status = pthread_mutexattr_init( &attr ); - assert( !status ); - - puts( "Init: Changing mutex attributes" ); - status = pthread_mutexattr_setprotocol( &attr, PTHREAD_PRIO_INHERIT ); - assert( !status ); - - status = pthread_mutexattr_setprioceiling( &attr, 128 ); - assert( !status ); - - status = pthread_mutexattr_setpshared( &attr, PTHREAD_PROCESS_SHARED ); - assert( !status ); - - Print_mutexattr( "Init: ", &attr ); - - puts( "Init: Resetting mutex attributes" ); - status = pthread_mutexattr_init( &attr ); - assert( !status ); - - puts( "Init: pthread_mutex_init - SUCCESSFUL" ); - status = pthread_mutex_init( &Mutex_id, &attr ); - if ( status ) - printf( "status = %d\n", status ); - assert( !status ); - - puts( "Init: pthread_mutex_init - EBUSY (attempt to initialize an existing mutex)" ); - status = pthread_mutex_init( &Mutex_id, &attr ); - if ( !status ) - printf( "status = %d\n", status ); - assert( status == EBUSY ); - - puts( "Init: pthread_mutex_trylock - EINVAL (illegal ID)" ); - status = pthread_mutex_trylock( &Mutex_bad_id ); - if ( status != EINVAL ) - printf( "status = %d\n", status ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutex_trylock - SUCCESSFUL" ); - status = pthread_mutex_trylock( &Mutex_id ); - if ( status ) - printf( "status = %d\n", status ); - assert( !status ); - - puts( "Init: pthread_mutex_trylock - EDEADLK (already locked)" ); - status = pthread_mutex_trylock( &Mutex_id ); - if ( status != EDEADLK ) - printf( "status = %d\n", status ); - assert( status == EDEADLK ); - - puts( "Init: pthread_mutex_lock - EDEADLK (already locked)" ); - status = pthread_mutex_lock( &Mutex_id ); - if ( status != EDEADLK ) - printf( "status = %d\n", status ); - assert( status == EDEADLK ); - - puts( "Init: Sleep 1 second" ); - - sleep( 1 ); - - /* switch to task 1 */ - - puts( "Init: pthread_mutex_unlock - EINVAL (invalid id)" ); - status = pthread_mutex_unlock( &Mutex_bad_id ); - if ( status != EINVAL ) - printf( "status = %d\n", status ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutex_unlock - SUCCESSFUL" ); - status = pthread_mutex_unlock( &Mutex_id ); - if ( status ) - printf( "status = %d\n", status ); - assert( !status ); - - puts( "Init: pthread_mutex_unlock - EPERM (not owner)" ); - status = pthread_mutex_unlock( &Mutex_id ); - if ( status != EPERM ) - printf( "status = %d\n", status ); - assert( status == EPERM ); - - times.tv_sec = 0; - times.tv_nsec = 500000000; - puts( "Init: pthread_mutex_timedlock - time out in 1/2 second" ); - status = pthread_mutex_timedlock( &Mutex_id, × ); - if ( status != EAGAIN ) - printf( "status = %d\n", status ); - assert( status == EAGAIN ); - - /* switch to idle */ - - puts( "Init: pthread_mutex_timedlock - EAGAIN (timeout)" ); - - /* destroy a mutex */ - - empty_line(); - - puts( "Init: pthread_mutex_init - SUCCESSFUL" ); - status = pthread_mutex_init( &Mutex2_id, &attr ); - if ( status ) - printf( "status = %d\n", status ); - assert( !status ); - - puts( "Init: pthread_mutex_init - EAGAIN (too many)" ); - status = pthread_mutex_init( &Mutex3_id, &attr ); - assert( status == EAGAIN ); - - puts( "Init: pthread_mutexattr_destroy - SUCCESSFUL" ); - status = pthread_mutexattr_destroy( &attr ); - assert( !status ); - - puts( "Init: pthread_mutex_destroy - SUCCESSFUL" ); - status = pthread_mutex_destroy( &Mutex2_id ); - assert( !status ); - - puts( "Init: pthread_mutex_destroy - EINVAL (invalid id)" ); - status = pthread_mutex_destroy( &Mutex_bad_id ); - assert( status == EINVAL ); - - /* destroy a busy mutex */ - - empty_line(); - - puts( "Init: pthread_mutexattr_init - SUCCESSFUL" ); - status = pthread_mutexattr_init( &attr ); - assert( !status ); - - puts( "Init: pthread_mutex_init - SUCCESSFUL" ); - status = pthread_mutex_init( &Mutex2_id, &attr ); - assert( !status ); - - puts( "Init: pthread_mutex_trylock - SUCCESSFUL" ); - status = pthread_mutex_trylock( &Mutex2_id ); - if ( status ) - printf( "status = %d\n", status ); - assert( !status ); - - puts( "Init: pthread_mutex_destroy - EBUSY (already locked)" ); - status = pthread_mutex_destroy( &Mutex2_id ); - if ( status != EBUSY ) - printf( "status = %d\n", status ); - assert( status == EBUSY ); - - puts( "Init: pthread_mutex_unlock - SUCCESSFUL" ); - status = pthread_mutex_unlock( &Mutex2_id ); - assert( !status ); - - puts( "Init: pthread_mutex_destroy - SUCCESSFUL" ); - status = pthread_mutex_destroy( &Mutex2_id ); - assert( !status ); - - /* priority inherit mutex */ - - empty_line(); - - puts( "Init: pthread_mutexattr_init - SUCCESSFUL" ); - status = pthread_mutexattr_init( &attr ); - assert( !status ); - - puts( - "Init: pthread_mutexattr_setprotocol - SUCCESSFUL (PTHREAD_PRIO_INHERIT)" - ); - status = pthread_mutexattr_setprotocol( &attr, PTHREAD_PRIO_INHERIT ); - assert( !status ); - - puts( "Init: pthread_mutex_init - SUCCESSFUL" ); - status = pthread_mutex_init( &Mutex2_id, &attr ); - assert( !status ); - - puts( "Init: pthread_mutex_trylock - SUCCESSFUL" ); - status = pthread_mutex_trylock( &Mutex2_id ); - assert( !status ); - - /* create a thread at a lower priority */ - - status = pthread_create( &Task2_id, NULL, Task_2, NULL ); - assert( !status ); - - /* set priority of Task2 to highest priority */ - - param.sched_priority = 255; - - puts( "Init: pthread_setschedparam - Setting Task2 priority to highest" ); - status = pthread_setschedparam( Task2_id, SCHED_FIFO, ¶m ); - assert( !status ); - - /* switching to Task2 */ - - status = pthread_getschedparam( pthread_self(), &policy, ¶m ); - assert( !status ); - printf( "Init: pthread_getschedparam - priority = %d\n", param.sched_priority); - - puts( "Init: pthread_mutex_unlock - SUCCESSFUL" ); - status = pthread_mutex_unlock( &Mutex2_id ); - assert( !status ); - - puts( "Init: pthread_mutexattr_destroy - SUCCESSFUL" ); - status = pthread_mutexattr_destroy( &attr ); - assert( !status ); - - puts( "Init: pthread_mutex_destroy - SUCCESSFUL" ); - status = pthread_mutex_destroy( &Mutex2_id ); - assert( !status ); - - /* priority ceiling mutex */ - - empty_line(); - - puts( "Init: pthread_mutexattr_init - SUCCESSFUL" ); - status = pthread_mutexattr_init( &attr ); - assert( !status ); - - puts( - "Init: pthread_mutexattr_setprotocol - SUCCESSFUL (PTHREAD_PRIO_PROTECT)" - ); - status = pthread_mutexattr_setprotocol( &attr, PTHREAD_PRIO_PROTECT ); - assert( !status ); - - puts( "Init: pthread_mutex_init - SUCCESSFUL" ); - status = pthread_mutex_init( &Mutex2_id, &attr ); - assert( !status ); - - puts( "Init: pthread_mutex_getprioceiling - EINVAL (invalid id)" ); - status = pthread_mutex_getprioceiling( &Mutex_bad_id, &ceiling ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutex_getprioceiling - EINVAL (NULL ceiling)" ); - status = pthread_mutex_getprioceiling( &Mutex2_id, NULL ); - assert( status == EINVAL ); - - status = pthread_mutex_getprioceiling( &Mutex2_id, &ceiling ); - assert( !status ); - printf( "Init: pthread_mutex_getprioceiling - %d\n", ceiling ); - - puts( "Init: pthread_mutex_setprioceiling - EINVAL (invalid id)" ); - status = pthread_mutex_setprioceiling( &Mutex_bad_id, 200, &old_ceiling ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutex_setprioceiling - EINVAL (illegal priority)" ); - status = pthread_mutex_setprioceiling( &Mutex2_id, 512, &old_ceiling ); - assert( status == EINVAL ); - - puts( "Init: pthread_mutex_setprioceiling - EINVAL (NULL ceiling)" ); - status = pthread_mutex_setprioceiling( &Mutex2_id, 128, NULL ); - assert( status == EINVAL ); - - /* normal cases of set priority ceiling */ - - puts( "Init: pthread_mutex_setprioceiling - new ceiling = 200" ); - status = pthread_mutex_setprioceiling( &Mutex2_id, 200, &old_ceiling ); - assert( !status ); - printf( - "Init: pthread_mutex_setprioceiling - old ceiling = %d\n",old_ceiling - ); - - status = pthread_getschedparam( pthread_self(), &policy, ¶m ); - assert( !status ); - printf( - "Init: pthread_getschedparam - priority = %d\n", param.sched_priority - ); - - puts( "Init: pthread_mutex_trylock - SUCCESSFUL" ); - status = pthread_mutex_trylock( &Mutex2_id ); - assert( !status ); - - status = pthread_getschedparam( pthread_self(), &policy, ¶m ); - assert( !status ); - printf( - "Init: pthread_getschedparam - priority = %d\n", param.sched_priority - ); - - /* create a thread at a higher priority */ - - status = pthread_create( &Task3_id, NULL, Task_3, NULL ); - assert( !status ); - - /* set priority of Task3 to highest priority */ - - param.sched_priority = 199; - - status = pthread_setschedparam( Task3_id, SCHED_FIFO, ¶m ); - assert( !status ); - puts( "Init: pthread_setschedparam - set Task3 priority to highest" ); - - /* DOES NOT SWITCH to Task3 */ - - puts( "Init: Sleep 1 second" ); - assert( !status ); - sleep( 1 ); - - /* switch to task 3 */ - - puts( "Init: pthread_mutex_unlock - SUCCESSFUL" ); - status = pthread_mutex_unlock( &Mutex2_id ); - assert( !status ); - - status = pthread_mutex_getprioceiling( &Mutex2_id, &ceiling ); - assert( !status ); - printf( "Init: pthread_mutex_getprioceiling- ceiling = %d\n", ceiling ); - - /* set priority of Init to highest priority */ - - param.sched_priority = 255; - - status = pthread_setschedparam( Init_id, SCHED_FIFO, ¶m ); - assert( !status ); - puts( "Init: pthread_setschedparam - set Init priority to highest" ); - - puts( "Init: pthread_mutex_lock - EINVAL (priority ceiling violation)" ); - status = pthread_mutex_lock( &Mutex2_id ); - if ( status != EINVAL ) - printf( "status = %d\n", status ); - assert( status == EINVAL ); - - puts( "*** END OF POSIX TEST 5 ***" ); - exit( 0 ); - - return NULL; /* just so the compiler thinks we returned something */ -} diff --git a/testsuites/psxtests/psx05/psx05.scn b/testsuites/psxtests/psx05/psx05.scn deleted file mode 100644 index 8d70b10c7b..0000000000 --- a/testsuites/psxtests/psx05/psx05.scn +++ /dev/null @@ -1,111 +0,0 @@ -*** POSIX TEST 5 *** -Init's ID is 0x0c010001 -Init: pthread_mutexattr_init - EINVAL (NULL attr) -Init: pthread_mutexattr_init - SUCCESSFUL -Init: mutex protocol is (0) -- PTHREAD_PRIO_NONE -Init: mutex priority ceiling is 255 -Init: mutex process shared is (0) -- PTHREAD_PROCESS_PRIVATE -Init: pthread_mutexattr_destroy - SUCCESSFUL -Init: pthread_mutexattr_destroy - EINVAL (NULL attr) -Init: pthread_mutexattr_destroy - EINVAL (not initialized) - -Init: pthread_mutexattr_getpshared - EINVAL (NULL attr) -Init: pthread_mutexattr_getpshared - EINVAL (NULL pshared) -Init: pthread_mutexattr_getpshared - EINVAL (not initialized) -Init: pthread_mutexattr_setpshared - EINVAL (NULL attr) -Init: pthread_mutexattr_setpshared - EINVAL (not initialized) - -Init: pthread_mutexattr_getprotocol - EINVAL (NULL attr) -Init: pthread_mutexattr_getprotocol - EINVAL (NULL protocol) -Init: pthread_mutexattr_getprotocol - EINVAL (not initialized) -Init: pthread_mutexattr_setprotocol - EINVAL (NULL attr) -Init: pthread_mutexattr_setprotocol - EINVAL (invalid protocol) -Init: pthread_mutexattr_setprotocol - EINVAL (not initialized) - -Init: pthread_mutexattr_getprioceiling - EINVAL (NULL attr) -Init: pthread_mutexattr_getprioceiling - EINVAL (NULL prioceiling) -Init: pthread_mutexattr_getprioceiling - EINVAL (not initialized) -Init: pthread_mutexattr_setprioceiling - EINVAL (NULL attr) -Init: pthread_mutexattr_setprioceiling - EINVAL (invalid priority) -Init: pthread_mutexattr_setprioceiling - EINVAL (not initialized) - -Init: pthread_mutex_init - EINVAL (NULL mutex_id) -Init: pthread_mutex_init - EINVAL (not initialized attr) -Init: pthread_mutex_init - EINVAL (bad protocol) -Init: pthread_mutex_init - EINVAL (bad priority ceiling) -Init: Resetting mutex attributes -Init: Changing mutex attributes -Init: mutex protocol is (1) -- PTHREAD_PRIO_INHERIT -Init: mutex priority ceiling is 128 -Init: mutex process shared is (1) -- PTHREAD_PROCESS_SHARED -Init: Resetting mutex attributes -Init: pthread_mutex_init - SUCCESSFUL -Init: pthread_mutex_init - EBUSY (attempt to initialize an existing mutex) -Init: pthread_mutex_trylock - EINVAL (illegal ID) -Init: pthread_mutex_trylock - SUCCESSFUL -Init: pthread_mutex_trylock - EDEADLK (already locked) -Init: pthread_mutex_lock - EDEADLK (already locked) -Init: Sleep 1 second -Task: pthread_mutex_trylock already locked -Task: pthread_mutex_lock unavailable -Init: pthread_mutex_unlock - EINVAL (invalid id) -Init: pthread_mutex_unlock - SUCCESSFUL -Init: pthread_mutex_unlock - EPERM (not owner) -Init: pthread_mutex_timedlock - time out in 1/2 second -Task: mutex acquired -Task: sleep for 2 seconds -Init: pthread_mutex_timedlock - EAGAIN (timeout) - -Init: pthread_mutex_init - SUCCESSFUL -Init: pthread_mutex_init - EAGAIN (too many) -Init: pthread_mutexattr_destroy - SUCCESSFUL -Init: pthread_mutex_destroy - SUCCESSFUL -Init: pthread_mutex_destroy - EINVAL (invalid id) - -Init: pthread_mutexattr_init - SUCCESSFUL -Init: pthread_mutex_init - SUCCESSFUL -Init: pthread_mutex_trylock - SUCCESSFUL -Init: pthread_mutex_destroy - EBUSY (already locked) -Init: pthread_mutex_unlock - SUCCESSFUL -Init: pthread_mutex_destroy - SUCCESSFUL - -Init: pthread_mutexattr_init - SUCCESSFUL -Init: pthread_mutexattr_setprotocol - SUCCESSFUL (PTHREAD_PRIO_INHERIT) -Init: pthread_mutex_init - SUCCESSFUL -Init: pthread_mutex_trylock - SUCCESSFUL -Init: pthread_setschedparam - Setting Task2 priority to highest -Task 2: pthread_mutex_lock unavailable (inherit case) -Init: pthread_getschedparam - priority = 255 -Init: pthread_mutex_unlock - SUCCESSFUL -Task 2: mutex acquired -Task 2: unlock Mutex 2 -Task 2: exit -Init: pthread_mutexattr_destroy - SUCCESSFUL -Init: pthread_mutex_destroy - SUCCESSFUL - -Init: pthread_mutexattr_init - SUCCESSFUL -Init: pthread_mutexattr_setprotocol - SUCCESSFUL (PTHREAD_PRIO_PROTECT) -Init: pthread_mutex_init - SUCCESSFUL -Init: pthread_mutex_getprioceiling - EINVAL (invalid id) -Init: pthread_mutex_getprioceiling - EINVAL (NULL ceiling) -Init: pthread_mutex_getprioceiling - 255 -Init: pthread_mutex_setprioceiling - EINVAL (invalid id) -Init: pthread_mutex_setprioceiling - EINVAL (illegal priority) -Init: pthread_mutex_setprioceiling - EINVAL (NULL ceiling) -Init: pthread_mutex_setprioceiling - new ceiling = 200 -Init: pthread_mutex_setprioceiling - old ceiling = 1 -Init: pthread_getschedparam - priority = 2 -Init: pthread_mutex_trylock - SUCCESSFUL -Init: pthread_getschedparam - priority = 200 -Init: pthread_setschedparam - set Task3 priority to highest -Init: Sleep 1 second -Task 3: pthread_mutex_lock unavailable (inherit case) -Init: pthread_mutex_unlock - SUCCESSFUL -Task 3: mutex acquired -Task 3: unlock Mutex 2 -Task 3: pthread_getschedparam priority = 199 -Task 3: exit -Init: pthread_mutex_getprioceiling- ceiling = 200 -Init: pthread_setschedparam - set Init priority to highest -Init: pthread_mutex_lock - EINVAL (priority ceiling violation) -*** END OF POSIX TEST 5 *** diff --git a/testsuites/psxtests/psx05/system.h b/testsuites/psxtests/psx05/system.h deleted file mode 100644 index 16bb938b26..0000000000 --- a/testsuites/psxtests/psx05/system.h +++ /dev/null @@ -1,67 +0,0 @@ -/* system.h - * - * This include file contains information that is included in every - * function in the test set. - * - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. - * On-Line Applications Research Corporation (OAR). - * All rights assigned to U.S. Government, 1994. - * - * This material may be reproduced by or for the U.S. Government pursuant - * to the copyright license under the clause at DFARS 252.227-7013. This - * notice must appear in all copies of this file and its derivatives. - * - * $Id$ - */ - -/* functions */ - -#include <pmacros.h> - -void *POSIX_Init( - void *argument -); - -void *Task_1( - void *argument -); - -void *Task_2( - void *argument -); - -void *Task_3( - void *argument -); - -/* configuration information */ - -#define CONFIGURE_SPTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_CLOCK_DRIVER - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 2 - -#include <confdefs.h> - -/* global variables */ - -#ifdef CONFIGURE_INIT -#define TEST_EXTERN -#else -#define TEST_EXTERN extern -#endif - -TEST_EXTERN pthread_t Init_id; -TEST_EXTERN pthread_t Task_id; -TEST_EXTERN pthread_t Task2_id; -TEST_EXTERN pthread_t Task3_id; -TEST_EXTERN pthread_mutex_t Mutex_id; -TEST_EXTERN pthread_mutex_t Mutex2_id; -TEST_EXTERN pthread_mutex_t Mutex3_id; -TEST_EXTERN pthread_mutex_t Mutex_bad_id; - -/* end of include file */ diff --git a/testsuites/psxtests/psx05/task.c b/testsuites/psxtests/psx05/task.c deleted file mode 100644 index 07320c133a..0000000000 --- a/testsuites/psxtests/psx05/task.c +++ /dev/null @@ -1,58 +0,0 @@ -/* Task_1 - * - * This routine serves as a test task. It verifies the basic task - * switching capabilities of the executive. - * - * Input parameters: - * argument - task argument - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. - * On-Line Applications Research Corporation (OAR). - * All rights assigned to U.S. Government, 1994. - * - * This material may be reproduced by or for the U.S. Government pursuant - * to the copyright license under the clause at DFARS 252.227-7013. This - * notice must appear in all copies of this file and its derivatives. - * - * $Id$ - */ - -#include "system.h" -#include <errno.h> - -void *Task_1( - void *argument -) -{ - int status; - - printf( "Task: pthread_mutex_trylock already locked\n" ); - status = pthread_mutex_trylock( &Mutex_id ); - if ( status != EBUSY ) - printf( "status = %d\n", status ); - assert( status == EBUSY ); - - printf( "Task: pthread_mutex_lock unavailable\n" ); - status = pthread_mutex_lock( &Mutex_id ); - if ( status ) - printf( "status = %d\n", status ); - assert( !status ); - - /* switch to init */ - - printf( "Task: mutex acquired\n" ); - - printf( "Task: sleep for 2 seconds\n" ); - sleep( 2 ); - - /* switch to init */ - - printf( "Task: exit\n" ); - pthread_exit( NULL ); - - /* switch to Init */ - - return NULL; /* just so the compiler thinks we returned something */ -} diff --git a/testsuites/psxtests/psx05/task2.c b/testsuites/psxtests/psx05/task2.c deleted file mode 100644 index 87c3f04b70..0000000000 --- a/testsuites/psxtests/psx05/task2.c +++ /dev/null @@ -1,49 +0,0 @@ -/* Task_2 - * - * This routine serves as a test task. - * - * Input parameters: - * argument - task argument - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. - * On-Line Applications Research Corporation (OAR). - * All rights assigned to U.S. Government, 1994. - * - * This material may be reproduced by or for the U.S. Government pursuant - * to the copyright license under the clause at DFARS 252.227-7013. This - * notice must appear in all copies of this file and its derivatives. - * - * $Id$ - */ - -#include "system.h" -#include <errno.h> - -void *Task_2( - void *argument -) -{ - int status; - - printf( "Task 2: pthread_mutex_lock unavailable (inherit case)\n" ); - status = pthread_mutex_lock( &Mutex2_id ); - if ( status ) - printf( "status =%d\n", status ); - assert( !status ); - printf( "Task 2: mutex acquired\n" ); - - /* switch to init */ - - printf( "Task 2: unlock Mutex 2\n" ); - status = pthread_mutex_unlock( &Mutex2_id ); - assert( !status ); - - printf( "Task 2: exit\n" ); - pthread_exit( NULL ); - - /* switch to Init */ - - return NULL; /* just so the compiler thinks we returned something */ -} diff --git a/testsuites/psxtests/psx05/task3.c b/testsuites/psxtests/psx05/task3.c deleted file mode 100644 index 34fd3ef6d6..0000000000 --- a/testsuites/psxtests/psx05/task3.c +++ /dev/null @@ -1,51 +0,0 @@ -/* Task_3 - * - * This routine serves as a test task. - * - * Input parameters: - * argument - task argument - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. - * On-Line Applications Research Corporation (OAR). - * All rights assigned to U.S. Government, 1994. - * - * This material may be reproduced by or for the U.S. Government pursuant - * to the copyright license under the clause at DFARS 252.227-7013. This - * notice must appear in all copies of this file and its derivatives. - * - * $Id$ - */ - -#include "system.h" -#include <errno.h> - -void *Task_3( - void *argument -) -{ - int status; - struct sched_param param; - int policy; - - printf( "Task 3: pthread_mutex_lock unavailable (inherit case)\n" ); - status = pthread_mutex_lock( &Mutex2_id ); - printf( "Task 3: mutex acquired\n" ); - assert( !status ); - - printf( "Task 3: unlock Mutex 2\n" ); - status = pthread_mutex_unlock( &Mutex2_id ); - assert( !status ); - - status = pthread_getschedparam( pthread_self(), &policy, ¶m ); - assert( !status ); - printf( "Task 3: pthread_getschedparam priority = %d\n", param.sched_priority ); - - printf( "Task 3: exit\n" ); - pthread_exit( NULL ); - - /* switch to Init */ - - return NULL; /* just so the compiler thinks we returned something */ -} |