diff options
Diffstat (limited to 'cpukit/rtems/src/semcreate.c')
-rw-r--r-- | cpukit/rtems/src/semcreate.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/cpukit/rtems/src/semcreate.c b/cpukit/rtems/src/semcreate.c index b57b635d85..ea89800685 100644 --- a/cpukit/rtems/src/semcreate.c +++ b/cpukit/rtems/src/semcreate.c @@ -92,9 +92,14 @@ rtems_status_code rtems_semaphore_create( ) { variant = SEMAPHORE_VARIANT_MUTEX_PRIORITY_CEILING; } else if ( - mutex_with_protocol + ( mutex_with_protocol & ~RTEMS_PRIORITY ) == ( RTEMS_BINARY_SEMAPHORE | RTEMS_MULTIPROCESSOR_RESOURCE_SHARING ) ) { + /* + * In RTEMS 5.2 using RTEMS_FIFO and RTEMS_PRIORITY for MrsP semaphores is + * allowed. In RTEMS 6, RTEMS_PRIORITY is required for MrsP semaphores + * analogous to priority ceiling semaphores. + */ #if defined(RTEMS_SMP) variant = SEMAPHORE_VARIANT_MRSP; #else |