summaryrefslogtreecommitdiffstats
path: root/testsuites/smptests
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-10-06 10:07:38 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-10-09 14:52:58 +0200
commitaf9115f35cfb3d0adeb3e105fd608883596f2637 (patch)
treed6638dc66e87ad1736f7675f79e7e6d116e5c463 /testsuites/smptests
parentscore: Change Timestamp_Control to sbintime_t (diff)
downloadrtems-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.c53
-rw-r--r--testsuites/smptests/smppsxaffinity01/smppsxaffinity01.scn16
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 ***