From 8230a329d34b2298d80817e900c3bde2cdcbdea0 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 15 Sep 2017 13:24:51 +0200 Subject: posix: Allow PTHREAD_PROCESS_SHARED for barriers Close #3126. --- testsuites/psxtests/psxbarrier01/test.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'testsuites/psxtests/psxbarrier01/test.c') diff --git a/testsuites/psxtests/psxbarrier01/test.c b/testsuites/psxtests/psxbarrier01/test.c index bcbb87a467..16e8665b94 100644 --- a/testsuites/psxtests/psxbarrier01/test.c +++ b/testsuites/psxtests/psxbarrier01/test.c @@ -161,6 +161,23 @@ int main( status = pthread_barrier_init( &barrier, &attr, 0 ); rtems_test_assert( status == EINVAL ); + puts( "pthread_barrier_init( &barrier, &attr, 1 ) -- EINVAL" ); + attr.process_shared = -1; + status = pthread_barrier_init( &barrier, &attr, 1 ); + rtems_test_assert( status == EINVAL ); + + puts( "pthread_barrierattr_setpshared( &attr, shared ) -- OK" ); + status = pthread_barrierattr_setpshared( &attr, PTHREAD_PROCESS_SHARED ); + rtems_test_assert( status == 0 ); + + puts( "pthread_barrier_init( &barrier, &attr, 1 ) -- OK" ); + status = pthread_barrier_init( &barrier, &attr, 1 ); + rtems_test_assert( status == 0 ); + + puts( "pthread_barrier_destroy( &barrier ) -- OK" ); + status = pthread_barrier_destroy( &barrier ); + rtems_test_assert( status == 0 ); + /* allocating too many */ puts( "pthread_barrier_init( &barrier, NULL, 1 ) -- OK" ); status = pthread_barrier_init( &barrier, NULL, 1 ); -- cgit v1.2.3