diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-10-06 10:07:38 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-10-09 14:52:58 +0200 |
commit | af9115f35cfb3d0adeb3e105fd608883596f2637 (patch) | |
tree | d6638dc66e87ad1736f7675f79e7e6d116e5c463 /testsuites/smptests | |
parent | score: Change Timestamp_Control to sbintime_t (diff) | |
download | rtems-af9115f35cfb3d0adeb3e105fd608883596f2637.tar.bz2 |
posix: Simplify POSIX_API_Control
Return stack area via pthread_getattr_np().
Simplify
* pthread_attr_setaffinity_np(), and
* pthread_attr_getaffinity_np()
and let the scheduler do the more sophisticated error checks.
Make
* pthread_setaffinity_np(),
* pthread_getaffinity_np(),
* pthread_attr_setaffinity_np(), and
* pthread_attr_getaffinity_np()
available in all configurations.
Update #2514.
Close #3145.
Close #3168.
Diffstat (limited to 'testsuites/smptests')
-rw-r--r-- | testsuites/smptests/smppsxaffinity01/init.c | 53 | ||||
-rw-r--r-- | testsuites/smptests/smppsxaffinity01/smppsxaffinity01.scn | 16 |
2 files changed, 38 insertions, 31 deletions
diff --git a/testsuites/smptests/smppsxaffinity01/init.c b/testsuites/smptests/smppsxaffinity01/init.c index c4c4f4f7c3..58e1db5435 100644 --- a/testsuites/smptests/smppsxaffinity01/init.c +++ b/testsuites/smptests/smppsxaffinity01/init.c @@ -38,21 +38,30 @@ void Validate_attrgetaffinity_errors(void) cpu_set_t cpuset; pthread_attr_t attr; + sc = pthread_attr_init( &attr ); + rtems_test_assert( sc == 0 ); + /* Verify pthread_attr_getaffinity_np validates attr */ - puts( "Init - pthread_attr_getaffinity_np - Invalid attr - EFAULT" ); - sc = pthread_attr_getaffinity_np( NULL, sizeof(cpu_set_t), &cpuset ); - rtems_test_assert( sc == EFAULT ); + puts( "Init - pthread_attr_getaffinity_np - Invalid attr - EINVAL" ); + sc = pthread_attr_getaffinity_np( NULL, sizeof( cpuset ), &cpuset ); + rtems_test_assert( sc == EINVAL ); /* Verify pthread_attr_getaffinity_np validates cpuset */ - puts( "Init - pthread_attr_getaffinity_np - Invalid attr - EFAULT" ); - sc = pthread_attr_getaffinity_np( &attr, sizeof(cpu_set_t), NULL ); - rtems_test_assert( sc == EFAULT ); + puts( "Init - pthread_attr_getaffinity_np - Invalid attr - EINVAL" ); + sc = pthread_attr_getaffinity_np( &attr, sizeof( cpuset ), NULL ); + rtems_test_assert( sc == EINVAL ); /* Verify pthread_attr_getaffinity_np validates cpusetsize */ puts( "Init - pthread_attr_getaffinity_np - Invalid cpusetsize - EINVAL" ); - sc = pthread_attr_getaffinity_np( &attr, sizeof(cpu_set_t) * 2 , &cpuset ); + sc = pthread_attr_getaffinity_np( &attr, sizeof( cpuset ) * 2 , &cpuset ); rtems_test_assert( sc == EINVAL ); + sc = pthread_attr_destroy( &attr ); + rtems_test_assert( sc == 0 ); + + puts( "Init - pthread_attr_getaffinity_np - Not initialized attr - EINVAL" ); + sc = pthread_attr_getaffinity_np( &attr, sizeof( cpuset ), &cpuset ); + rtems_test_assert( sc == EINVAL ); } void Validate_attrsetaffinity_errors(void) @@ -61,31 +70,29 @@ void Validate_attrsetaffinity_errors(void) cpu_set_t cpuset; pthread_attr_t attr; + sc = pthread_attr_init( &attr ); + rtems_test_assert( sc == 0 ); + /* Verify pthread_attr_setaffinity_np validates attr. */ - puts( "Init - pthread_attr_setaffinity_np - Invalid attr - EFAULT" ); - sc = pthread_attr_setaffinity_np( NULL, sizeof(cpu_set_t), &cpuset ); - rtems_test_assert( sc == EFAULT ); + puts( "Init - pthread_attr_setaffinity_np - Invalid attr - EINVAL" ); + sc = pthread_attr_setaffinity_np( NULL, sizeof( cpuset ), &cpuset ); + rtems_test_assert( sc == EINVAL ); /* Verify pthread_attr_setaffinity_np validates cpuset */ - puts( "Init - pthread_attr_setaffinity_np - Invalid attr - EFAULT" ); - sc = pthread_attr_setaffinity_np( &attr, sizeof(cpu_set_t), NULL ); - rtems_test_assert( sc == EFAULT ); + puts( "Init - pthread_attr_setaffinity_np - Invalid attr - EINVAL" ); + sc = pthread_attr_setaffinity_np( &attr, sizeof( cpuset ), NULL ); + rtems_test_assert( sc == EINVAL ); /* Verify pthread_attr_setaffinity_np validates cpusetsize */ puts( "Init - pthread_attr_setaffinity_np - Invalid cpusetsize - EINVAL" ); - sc = pthread_attr_setaffinity_np( &attr, sizeof(cpu_set_t) * 2 , &cpuset ); + sc = pthread_attr_setaffinity_np( &attr, sizeof( cpuset ) * 2 , &cpuset ); rtems_test_assert( sc == EINVAL ); - /* Verify pthread_attr_setaffinity_np validates cpuset greater than 0 */ - CPU_ZERO(&cpuset); - puts( "Init - pthread_attr_setaffinity_np - No cpus in cpuset - EINVAL" ); - sc = pthread_attr_setaffinity_np( &attr, sizeof(cpu_set_t) , &cpuset ); - rtems_test_assert( sc == EINVAL ); + sc = pthread_attr_destroy( &attr ); + rtems_test_assert( sc == 0 ); - /* Verify pthread_attr_setaffinity_np validates invalid cpu in cpuset */ - CPU_FILL(&cpuset); - puts( "Init - pthread_attr_setaffinity_np - Too many cpus in cpuset - EINVAL" ); - sc = pthread_attr_setaffinity_np( &attr, sizeof(cpu_set_t) , &cpuset ); + puts( "Init - pthread_attr_setaffinity_np - Not initialized attr - EINVAL" ); + sc = pthread_attr_setaffinity_np( &attr, sizeof( cpuset ), &cpuset ); rtems_test_assert( sc == EINVAL ); } diff --git a/testsuites/smptests/smppsxaffinity01/smppsxaffinity01.scn b/testsuites/smptests/smppsxaffinity01/smppsxaffinity01.scn index 70bd6d31c8..15459e0c2c 100644 --- a/testsuites/smptests/smppsxaffinity01/smppsxaffinity01.scn +++ b/testsuites/smptests/smppsxaffinity01/smppsxaffinity01.scn @@ -1,11 +1,11 @@ -*** SMP POSIX AFFINITY ATTRIBUTE TEST 1 *** -Init - pthread_attr_setaffinity_np - Invalid attr - EFAULT -Init - pthread_attr_setaffinity_np - Invalid attr - EFAULT +*** BEGIN OF TEST SMPPSXAFFINITY 1 *** +Init - pthread_attr_setaffinity_np - Invalid attr - EINVAL +Init - pthread_attr_setaffinity_np - Invalid attr - EINVAL Init - pthread_attr_setaffinity_np - Invalid cpusetsize - EINVAL -Init - pthread_attr_setaffinity_np - No cpus in cpuset - EINVAL -Init - pthread_attr_setaffinity_np - Too many cpus in cpuset - EINVAL -Init - pthread_attr_getaffinity_np - Invalid attr - EFAULT -Init - pthread_attr_getaffinity_np - Invalid attr - EFAULT +Init - pthread_attr_setaffinity_np - Not initialized attr - EINVAL +Init - pthread_attr_getaffinity_np - Invalid attr - EINVAL +Init - pthread_attr_getaffinity_np - Invalid attr - EINVAL Init - pthread_attr_getaffinity_np - Invalid cpusetsize - EINVAL +Init - pthread_attr_getaffinity_np - Not initialized attr - EINVAL Init - Validate pthread_attr_setaffinity_np and pthread_attr_getaffinity_np -*** END OF SMP POSIX AFFINITY ATTRIBUTE TEST 1 *** +*** END OF TEST SMPPSXAFFINITY 1 *** |