summaryrefslogtreecommitdiffstats
path: root/testsuites/psxtests/psx01
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2013-08-23 14:56:36 +1000
committerChris Johns <chrisj@rtems.org>2013-08-23 14:56:36 +1000
commit6e4c01e3a2c07d3d42c510fbff70c14ccbafd2df (patch)
treeec6d62205983fabb345a6d84cd50804265fe3349 /testsuites/psxtests/psx01
parentbsps/arm: Add more CP15 cache functions (diff)
downloadrtems-6e4c01e3a2c07d3d42c510fbff70c14ccbafd2df.tar.bz2
posix: Update to the pthread_once changes.
Implement the reeview changes. Add a POSIX Fatal error domain. Fix confdefs.h to correctly handle the internal POSIX mutexes.
Diffstat (limited to 'testsuites/psxtests/psx01')
-rw-r--r--testsuites/psxtests/psx01/init.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/testsuites/psxtests/psx01/init.c b/testsuites/psxtests/psx01/init.c
index 59605b49af..1d1a9e8e63 100644
--- a/testsuites/psxtests/psx01/init.c
+++ b/testsuites/psxtests/psx01/init.c
@@ -20,6 +20,18 @@
#include <rtems/score/todimpl.h>
+pthread_once_t nesting_once = PTHREAD_ONCE_INIT;
+
+void Test_init_routine_nesting( void );
+
+void Test_init_routine_nesting( void )
+{
+ int status;
+ puts( "Test_init_routine_nesting: invoked" );
+ status = pthread_once( &nesting_once, Test_init_routine_nesting );
+ rtems_test_assert( status == EINVAL );
+}
+
void *POSIX_Init(
void *argument
)
@@ -95,6 +107,11 @@ void *POSIX_Init(
);
rtems_test_assert( !status );
+ /* once nesting */
+ puts( "Init: pthread_once - SUCCESSFUL (init_routine_nesting executes)" );
+ status = pthread_once( &nesting_once, Test_init_routine_nesting );
+ rtems_test_assert( !status );
+
/* create a thread */
puts( "Init: pthread_create - SUCCESSFUL" );