diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2009-03-02 16:13:40 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2009-03-02 16:13:40 +0000 |
commit | 5ab52fb40a594190edea5fbc0c0eb6e552257403 (patch) | |
tree | f501c0053c859d1c6b7ae66da539ab7cedae7b50 | |
parent | 86458b0e9792d33c545aa699318c0780b21fd981 (diff) |
2009-03-02 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1388/cpukit
* sp09/screen05.c, sp09/screen09.c, sp09/sp09.scn: Classic Semaphores
allow both priority inherit and ceiling attributes to be set on
semaphore create. These attributes are mutually exclusive and this
should be an error.
-rw-r--r-- | testsuites/sptests/ChangeLog | 8 | ||||
-rw-r--r-- | testsuites/sptests/sp09/screen05.c | 34 | ||||
-rw-r--r-- | testsuites/sptests/sp09/screen09.c | 2 | ||||
-rw-r--r-- | testsuites/sptests/sp09/sp09.scn | 4 |
4 files changed, 44 insertions, 4 deletions
diff --git a/testsuites/sptests/ChangeLog b/testsuites/sptests/ChangeLog index fcfe0dbdf7..e3f8c36780 100644 --- a/testsuites/sptests/ChangeLog +++ b/testsuites/sptests/ChangeLog @@ -1,3 +1,11 @@ +2009-03-02 Joel Sherrill <joel.sherrill@OARcorp.com> + + PR 1388/cpukit + * sp09/screen05.c, sp09/screen09.c, sp09/sp09.scn: Classic Semaphores + allow both priority inherit and ceiling attributes to be set on + semaphore create. These attributes are mutually exclusive and this + should be an error. + 2009-01-21 Nickolay Kolchin <nbkolchin@gmail.com> Joel Sherrill <joel.sherrill@oarcorp.com> diff --git a/testsuites/sptests/sp09/screen05.c b/testsuites/sptests/sp09/screen05.c index 7b27bc6cf4..87f9dcc6e3 100644 --- a/testsuites/sptests/sp09/screen05.c +++ b/testsuites/sptests/sp09/screen05.c @@ -6,7 +6,7 @@ * * Output parameters: NONE * - * COPYRIGHT (c) 1989-1999. + * COPYRIGHT (c) 1989-2009. * On-Line Applications Research Corporation (OAR). * * The license and distribution terms for this file may be @@ -85,7 +85,37 @@ void Screen5() RTEMS_NOT_DEFINED, "rtems_semaphore_create of RTEMS_FIFO RTEMS_INHERIT_PRIORITY" ); - puts( "TA1 - rtems_semaphore_create - RTEMS_NOT_DEFINED" ); + puts( "TA1 - rtems_semaphore_create - FIFO and inherit - RTEMS_NOT_DEFINED" ); + + status = rtems_semaphore_create( + Semaphore_name[ 1 ], + 1, + RTEMS_PRIORITY_CEILING | RTEMS_BINARY_SEMAPHORE | RTEMS_FIFO, + RTEMS_NO_PRIORITY, + &Junk_id + ); + fatal_directive_status( + status, + RTEMS_NOT_DEFINED, + "rtems_semaphore_create of RTEMS_FIFO RTEMS_CEILING_PRIORITY" + ); + puts( "TA1 - rtems_semaphore_create - FIFO and ceiling - RTEMS_NOT_DEFINED" ); + + status = rtems_semaphore_create( + Semaphore_name[ 1 ], + 1, + RTEMS_INHERIT_PRIORITY | RTEMS_PRIORITY_CEILING | + RTEMS_BINARY_SEMAPHORE | RTEMS_PRIORITY, + 10, + &Junk_id + ); + fatal_directive_status( + status, + RTEMS_NOT_DEFINED, + "rtems_semaphore_create of binary with ceiling and inherit" + ); + puts( + "TA1 - rtems_semaphore_create - ceiling and inherit - RTEMS_NOT_DEFINED" ); status = rtems_semaphore_create( Semaphore_name[ 1 ], diff --git a/testsuites/sptests/sp09/screen09.c b/testsuites/sptests/sp09/screen09.c index 0e01acb3ef..6ce6dc687b 100644 --- a/testsuites/sptests/sp09/screen09.c +++ b/testsuites/sptests/sp09/screen09.c @@ -6,7 +6,7 @@ * * Output parameters: NONE * - * COPYRIGHT (c) 1989-1999. + * COPYRIGHT (c) 1989-2009. * On-Line Applications Research Corporation (OAR). * * The license and distribution terms for this file may be diff --git a/testsuites/sptests/sp09/sp09.scn b/testsuites/sptests/sp09/sp09.scn index 1f00519188..231e43340c 100644 --- a/testsuites/sptests/sp09/sp09.scn +++ b/testsuites/sptests/sp09/sp09.scn @@ -67,7 +67,9 @@ TA1 - rtems_semaphore_create - RTEMS_INVALID_NAME TA1 - rtems_semaphore_create - 1 - RTEMS_SUCCESSFUL TA1 - rtems_semaphore_create - 2 - RTEMS_SUCCESSFUL TA1 - rtems_semaphore_create - 3 - RTEMS_TOO_MANY -TA1 - rtems_semaphore_create - RTEMS_NOT_DEFINED +TA1 - rtems_semaphore_create - FIFO and inherit - RTEMS_NOT_DEFINED +TA1 - rtems_semaphore_create - FIFO and ceiling - RTEMS_NOT_DEFINED +TA1 - rtems_semaphore_create - ceiling and inherit - RTEMS_NOT_DEFINED TA1 - rtems_semaphore_create - RTEMS_NOT_DEFINED TA1 - rtems_semaphore_create - RTEMS_INVALID_NUMBER TA1 - rtems_semaphore_create - RTEMS_MP_NOT_CONFIGURED |