mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2026-09-20 14:29:23 +08:00
Remove trailing whitespace in previous patches
This commit is contained in:
@@ -141,10 +141,10 @@ libposix_a_SOURCES += src/pthreadatfork.c src/pthreadattrdestroy.c \
|
||||
src/psxpriorityisvalid.c src/psxtransschedparam.c
|
||||
|
||||
## RTEMS specific support methods
|
||||
libposix_a_SOURCES += src/pthreadattrcompare.c
|
||||
libposix_a_SOURCES += src/pthreadattrcompare.c
|
||||
|
||||
if HAS_SMP
|
||||
## PTHREAD_AFFINITY_C_FILES
|
||||
## PTHREAD_AFFINITY_C_FILES
|
||||
libposix_a_SOURCES += src/pthreadattrsetaffinitynp.c \
|
||||
src/pthreadattrgetaffinitynp.c src/pthreadgetaffinitynp.c \
|
||||
src/pthreadsetaffinitynp.c
|
||||
|
||||
@@ -89,7 +89,7 @@ RTEMS_INLINE_ROUTINE Thread_Control *_POSIX_Threads_Allocate( void );
|
||||
* @param[out] src_attr is a pointer to the thread attribute
|
||||
* structure to copy from.
|
||||
*/
|
||||
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Copy_attributes(
|
||||
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Copy_attributes(
|
||||
pthread_attr_t *dst_attr,
|
||||
const pthread_attr_t *src_attr
|
||||
);
|
||||
@@ -132,8 +132,8 @@ RTEMS_INLINE_ROUTINE Thread_Control *_POSIX_Threads_Get(
|
||||
*
|
||||
* This routine initializes the thread attributes structure.
|
||||
*/
|
||||
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Initialize_attributes(
|
||||
pthread_attr_t *attr
|
||||
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Initialize_attributes(
|
||||
pthread_attr_t *attr
|
||||
);
|
||||
|
||||
/**
|
||||
@@ -210,7 +210,7 @@ int rtems_pthread_attribute_compare(
|
||||
const pthread_attr_t *attr1,
|
||||
const pthread_attr_t *attr2
|
||||
);
|
||||
|
||||
|
||||
/*
|
||||
* _POSIX_Threads_Allocate
|
||||
*/
|
||||
@@ -224,19 +224,19 @@ RTEMS_INLINE_ROUTINE Thread_Control *_POSIX_Threads_Allocate( void )
|
||||
* _POSIX_Threads_Copy_attributes
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Copy_attributes(
|
||||
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Copy_attributes(
|
||||
pthread_attr_t *dst_attr,
|
||||
const pthread_attr_t *src_attr
|
||||
)
|
||||
{
|
||||
*dst_attr = *src_attr;
|
||||
#if defined(__RTEMS_HAVE_SYS_CPUSET_H__)
|
||||
_Assert(
|
||||
_Assert(
|
||||
dst_attr->affinitysetsize == sizeof(dst_attr->affinitysetpreallocated)
|
||||
);
|
||||
dst_attr->affinityset = &dst_attr->affinitysetpreallocated;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* _POSIX_Threads_Free
|
||||
@@ -266,15 +266,15 @@ RTEMS_INLINE_ROUTINE Thread_Control *_POSIX_Threads_Get (
|
||||
* _POSIX_Threads_Initialize_attributes
|
||||
*/
|
||||
|
||||
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Initialize_attributes(
|
||||
pthread_attr_t *attr
|
||||
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Initialize_attributes(
|
||||
pthread_attr_t *attr
|
||||
)
|
||||
{
|
||||
_POSIX_Threads_Copy_attributes(
|
||||
attr,
|
||||
&_POSIX_Threads_Default_attributes
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* _POSIX_Threads_Is_null
|
||||
|
||||
@@ -372,7 +372,7 @@ void _POSIX_Threads_Manager_initialization(void)
|
||||
attr->affinitysetsize = sizeof( *attr->affinityset );
|
||||
CPU_ZERO_S( attr->affinitysetsize, &attr->affinitysetpreallocated );
|
||||
|
||||
for (i=0; i<max_cpus; i++)
|
||||
for (i=0; i<max_cpus; i++)
|
||||
CPU_SET_S(i, attr->affinitysetsize, attr->affinityset );
|
||||
#endif
|
||||
|
||||
|
||||
@@ -48,8 +48,8 @@ int rtems_pthread_attribute_compare(
|
||||
return 1;
|
||||
|
||||
if (memcmp(
|
||||
&attr1->schedparam,
|
||||
&attr2->schedparam,
|
||||
&attr1->schedparam,
|
||||
&attr2->schedparam,
|
||||
sizeof(struct sched_param)
|
||||
))
|
||||
return 1;
|
||||
@@ -71,16 +71,16 @@ int rtems_pthread_attribute_compare(
|
||||
if ( attr1->affinitysetsize != attr2->affinitysetsize )
|
||||
return 1;
|
||||
|
||||
if (!CPU_EQUAL_S(
|
||||
attr1->affinitysetsize,
|
||||
attr1->affinityset,
|
||||
if (!CPU_EQUAL_S(
|
||||
attr1->affinitysetsize,
|
||||
attr1->affinityset,
|
||||
attr2->affinityset
|
||||
))
|
||||
return 1;
|
||||
|
||||
if (!CPU_EQUAL_S(
|
||||
attr1->affinitysetsize,
|
||||
&attr1->affinitysetpreallocated,
|
||||
attr1->affinitysetsize,
|
||||
&attr1->affinitysetpreallocated,
|
||||
&attr2->affinitysetpreallocated
|
||||
))
|
||||
return 1;
|
||||
|
||||
@@ -45,7 +45,7 @@ int pthread_attr_setaffinity_np(
|
||||
error = _CPU_set_Is_valid( cpuset, cpusetsize );
|
||||
if ( error != 0 )
|
||||
return EINVAL;
|
||||
|
||||
|
||||
CPU_COPY( attr->affinityset, cpuset );
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -41,7 +41,7 @@ int pthread_getaffinity_np(
|
||||
|
||||
if ( !cpuset )
|
||||
return EFAULT;
|
||||
|
||||
|
||||
the_thread = _Thread_Get( id, &location );
|
||||
switch ( location ) {
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ int pthread_setaffinity_np(
|
||||
error = _CPU_set_Is_valid( cpuset, cpusetsize );
|
||||
if ( error != 0 )
|
||||
return EINVAL;
|
||||
|
||||
|
||||
the_thread = _Thread_Get( id, &location );
|
||||
switch ( location ) {
|
||||
|
||||
|
||||
@@ -494,7 +494,7 @@ rtems_status_code rtems_task_variable_delete(
|
||||
/**
|
||||
* @brief RTEMS Get Task Affinity
|
||||
*
|
||||
* This directive returns the cpuset for the
|
||||
* This directive returns the cpuset for the
|
||||
* given task. The cpuset size must be the
|
||||
* same size as the task affinity set size.
|
||||
*
|
||||
@@ -502,36 +502,36 @@ rtems_status_code rtems_task_variable_delete(
|
||||
* @param[in] cpusetsize is the size of the cpuset
|
||||
* @param[out] cpuset is the tasks affinity cpuset
|
||||
*
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful
|
||||
* @retval RTEMS_INVALID_ADDRESS if cpuset is NULL
|
||||
* @retval RTEMS_INVALID_NUMBER if cpusetsize is incorrect
|
||||
* @retval RTEMS_INVALID_ID if id not valid
|
||||
*/
|
||||
* @retval RTEMS_INVALID_ID if id not valid
|
||||
*/
|
||||
rtems_status_code rtems_task_get_affinity(
|
||||
rtems_id id,
|
||||
size_t cpusetsize,
|
||||
cpu_set_t *cpuset
|
||||
cpu_set_t *cpuset
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Set Task Affinity
|
||||
*
|
||||
* This directive sets the given tasks
|
||||
* This directive sets the given tasks
|
||||
* affinity cpuset.
|
||||
*
|
||||
* @param[in] id is the thread to extract
|
||||
* @param[in] cpusetsize is the size of the cpuset
|
||||
* @param[in] cpuset is affinity set to assign to the task
|
||||
*
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful
|
||||
* @retval RTEMS_INVALID_ADDRESS if cpuset is NULL
|
||||
* @retval RTEMS_INVALID_NUMBER if cpuset or cpusetsize is incorrect
|
||||
* @retval RTEMS_INVALID_ID if id not valid
|
||||
*/
|
||||
* @retval RTEMS_INVALID_NUMBER if cpuset or cpusetsize is incorrect
|
||||
* @retval RTEMS_INVALID_ID if id not valid
|
||||
*/
|
||||
rtems_status_code rtems_task_set_affinity(
|
||||
rtems_id id,
|
||||
size_t cpusetsize,
|
||||
cpu_set_t *cpuset
|
||||
cpu_set_t *cpuset
|
||||
);
|
||||
#endif
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
rtems_status_code rtems_task_get_affinity(
|
||||
rtems_id id,
|
||||
size_t cpusetsize,
|
||||
cpu_set_t *cpuset
|
||||
cpu_set_t *cpuset
|
||||
)
|
||||
{
|
||||
Thread_Control *the_thread;
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
rtems_status_code rtems_task_set_affinity(
|
||||
rtems_id id,
|
||||
size_t cpusetsize,
|
||||
cpu_set_t *cpuset
|
||||
cpu_set_t *cpuset
|
||||
)
|
||||
{
|
||||
Thread_Control *the_thread;
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
* @brief Information About the CPU Set
|
||||
*
|
||||
* This include file contains all information about the thread
|
||||
* CPU Set.
|
||||
* CPU Set.
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -26,7 +26,7 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef __RTEMS_HAVE_SYS_CPUSET_H__
|
||||
|
||||
|
||||
/**
|
||||
* @defgroup ScoreCpuset
|
||||
*
|
||||
@@ -41,7 +41,7 @@ extern "C" {
|
||||
* The following defines the control block used to manage the cpuset.
|
||||
* The names do not include affinity in the front in case the set is
|
||||
* ever used for something other than affinity. The usage in thread
|
||||
* uses the attribute affinity such that accesses will read
|
||||
* uses the attribute affinity such that accesses will read
|
||||
* thread->affinity.set.
|
||||
*/
|
||||
typedef struct {
|
||||
|
||||
@@ -422,7 +422,7 @@ struct Thread_Control_struct {
|
||||
* in an SMP system.
|
||||
*/
|
||||
CPU_set_Control affinity;
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if __RTEMS_ADA__
|
||||
|
||||
@@ -46,7 +46,7 @@ void _CPU_set_Handler_initialization()
|
||||
cpuset_default.setsize = sizeof( *cpuset_default.set );
|
||||
CPU_ZERO_S( cpuset_default.setsize, &cpuset_default.preallocated );
|
||||
|
||||
for (i=0; i<max_cpus; i++)
|
||||
for (i=0; i<max_cpus; i++)
|
||||
CPU_SET_S(i, cpuset_default.setsize, cpuset_default.set );
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ int _CPU_set_Is_valid( const cpu_set_t *cpuset, size_t setsize )
|
||||
*
|
||||
* This routine returns the default cpuset.
|
||||
*/
|
||||
const CPU_set_Control *_CPU_set_Default()
|
||||
const CPU_set_Control *_CPU_set_Default()
|
||||
{
|
||||
return &cpuset_default;
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
void _CPU_set_Show_with_plugin(
|
||||
void *context,
|
||||
rtems_printk_plugin_t print,
|
||||
const char *description,
|
||||
const char *description,
|
||||
const cpu_set_t *cpuset
|
||||
);
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
void _CPU_set_Show_with_plugin(
|
||||
void *context,
|
||||
rtems_printk_plugin_t print,
|
||||
const char *description,
|
||||
const char *description,
|
||||
const cpu_set_t *cpuset
|
||||
)
|
||||
{
|
||||
@@ -79,6 +79,6 @@
|
||||
{
|
||||
const CPU_set_Control *ctl;
|
||||
ctl = _CPU_set_Default();
|
||||
_CPU_set_Show( description, ctl->set );
|
||||
_CPU_set_Show( description, ctl->set );
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -45,7 +45,7 @@ void *Thread_1(
|
||||
rtems_test_assert( sc == 0 );
|
||||
rtems_test_assert( ! rtems_pthread_attribute_compare(&attr, &Thread_attr) );
|
||||
|
||||
param.sched_priority = max_priority;
|
||||
param.sched_priority = max_priority;
|
||||
|
||||
puts( "Thread - pthread_setschedparam: Setting highest priority SCHED_FIFO" );
|
||||
sc = pthread_setschedparam( Thread_id, SCHED_FIFO, ¶m );
|
||||
@@ -54,11 +54,11 @@ void *Thread_1(
|
||||
puts("Thread - Detach");
|
||||
sc = pthread_detach( Thread_id );
|
||||
rtems_test_assert( !sc );
|
||||
|
||||
|
||||
puts("Thread - pthread_getattr_np");
|
||||
sc = pthread_getattr_np( Thread_id, &attr );
|
||||
rtems_test_assert( !sc );
|
||||
|
||||
|
||||
puts("Thread - Verify SCHED_FIFO policy");
|
||||
sc = pthread_attr_getschedpolicy( &attr, &value );
|
||||
rtems_test_assert( !sc );
|
||||
@@ -89,7 +89,7 @@ void *POSIX_Init(
|
||||
|
||||
puts( "\n\n*** POSIX ATTRIBUTE TEST 1 ***" );
|
||||
|
||||
/* Initialize thread id */
|
||||
/* Initialize thread id */
|
||||
Init_id = pthread_self();
|
||||
max_priority = sched_get_priority_max( SCHED_FIFO );
|
||||
|
||||
@@ -106,21 +106,21 @@ void *POSIX_Init(
|
||||
puts("Init - pthread_attr_init");
|
||||
sc = pthread_attr_init(&Thread_attr);
|
||||
rtems_test_assert(!sc);
|
||||
|
||||
|
||||
puts("Init - pthread_attr_setinheritsched - PTHREAD_EXPLICIT_SCHED");
|
||||
sc = pthread_attr_setinheritsched( &Thread_attr, PTHREAD_EXPLICIT_SCHED );
|
||||
rtems_test_assert(!sc);
|
||||
rtems_test_assert( Thread_attr.inheritsched == PTHREAD_EXPLICIT_SCHED );
|
||||
|
||||
|
||||
puts("Init - pthread_attr_setschedpolicy to SCHED_RR");
|
||||
sc = pthread_attr_setschedpolicy(&Thread_attr, SCHED_RR);
|
||||
rtems_test_assert(!sc);
|
||||
|
||||
|
||||
puts("Init - pthread_attr_setschedparam to minimum priority + 2");
|
||||
param.sched_priority = sched_get_priority_min( SCHED_RR ) + 2;
|
||||
sc = pthread_attr_setschedparam( &Thread_attr, ¶m );
|
||||
rtems_test_assert(!sc);
|
||||
|
||||
|
||||
puts("Init - pthread_attr_getstack");
|
||||
sc = pthread_attr_getstack( &Thread_attr, &stackaddr, &stacksize );
|
||||
rtems_test_assert(!sc);
|
||||
@@ -181,7 +181,7 @@ void *POSIX_Init(
|
||||
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
|
||||
#define CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER
|
||||
|
||||
#define CONFIGURE_MAXIMUM_POSIX_THREADS 2
|
||||
#define CONFIGURE_MAXIMUM_POSIX_THREADS 2
|
||||
|
||||
#define CONFIGURE_POSIX_INIT_THREAD_TABLE
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ test set name: psxgetattr01
|
||||
directives:
|
||||
|
||||
pthread_getattr
|
||||
|
||||
|
||||
concepts:
|
||||
|
||||
+ Verify error conditions in pthread_getattr
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
ACLOCAL_AMFLAGS = -I ../aclocal
|
||||
|
||||
SUBDIRS =
|
||||
SUBDIRS =
|
||||
|
||||
if SMPTESTS
|
||||
SUBDIRS += smp01
|
||||
|
||||
@@ -41,13 +41,13 @@ void Validate_setaffinity_errors(void)
|
||||
/* Note this check assumes you are running with less than 32 CPUs */
|
||||
CPU_FILL(&cpuset);
|
||||
puts( "Init - rtems_task_set_affinity - Invalid cpu - RTEMS_INVALID_NUMBER" );
|
||||
sc = rtems_task_set_affinity( Init_id, sizeof(cpu_set_t), &cpuset );
|
||||
sc = rtems_task_set_affinity( Init_id, sizeof(cpu_set_t), &cpuset );
|
||||
rtems_test_assert( sc == RTEMS_INVALID_NUMBER );
|
||||
|
||||
|
||||
/* Verify rtems_task_set_affinity checks that at least one cpu is set */
|
||||
CPU_ZERO(&cpuset);
|
||||
puts( "Init - rtems_task_set_affinity - no cpu - RTEMS_INVALID_NUMBER" );
|
||||
sc = rtems_task_set_affinity( Init_id, sizeof(cpu_set_t), &cpuset );
|
||||
sc = rtems_task_set_affinity( Init_id, sizeof(cpu_set_t), &cpuset );
|
||||
rtems_test_assert( sc == RTEMS_INVALID_NUMBER );
|
||||
|
||||
/* Verify rtems_task_set_affinity checks that at thread id is valid */
|
||||
@@ -55,7 +55,7 @@ void Validate_setaffinity_errors(void)
|
||||
puts( "Init - rtems_task_set_affinity - Invalid thread - RTEMS_INVALID_ID" );
|
||||
sc = rtems_task_set_affinity( 999, sizeof(cpu_set_t), &cpuset );
|
||||
rtems_test_assert( sc == RTEMS_INVALID_ID );
|
||||
|
||||
|
||||
/* Verify rtems_task_set_affinity validates cpusetsize */
|
||||
puts( "Init - rtems_task_set_affinity - Invalid cpusetsize - RTEMS_INVALID_NUMBER" );
|
||||
sc = rtems_task_set_affinity( Init_id, sizeof(cpu_set_t) * 2, &cpuset );
|
||||
@@ -67,7 +67,7 @@ void Validate_setaffinity_errors(void)
|
||||
rtems_test_assert( sc == RTEMS_INVALID_ADDRESS );
|
||||
}
|
||||
|
||||
void Validate_getaffinity_errors(void)
|
||||
void Validate_getaffinity_errors(void)
|
||||
{
|
||||
int sc;
|
||||
cpu_set_t cpuset;
|
||||
@@ -77,9 +77,9 @@ void Validate_getaffinity_errors(void)
|
||||
puts( "Init - rtems_task_get_affinity - Invalid thread - RTEMS_INVALID_ID" );
|
||||
sc = rtems_task_get_affinity( 999, sizeof(cpu_set_t), &cpuset );
|
||||
rtems_test_assert( sc == RTEMS_INVALID_ID );
|
||||
|
||||
|
||||
/* Verify rtems_task_get_affinity validates cpusetsize */
|
||||
puts(
|
||||
puts(
|
||||
"Init - rtems_task_get_affinity - Invalid cpusetsize - RTEMS_INVALID_NUMBER"
|
||||
);
|
||||
sc = rtems_task_get_affinity( Init_id, sizeof(cpu_set_t) * 2, &cpuset );
|
||||
@@ -98,18 +98,18 @@ void Validate_affinity(void )
|
||||
cpu_set_t cpuset2;
|
||||
uint32_t i;
|
||||
int sc;
|
||||
int cpu_count;
|
||||
int cpu_count;
|
||||
rtems_task_priority priority;
|
||||
char ch[2];
|
||||
|
||||
|
||||
|
||||
|
||||
puts( "Init - Set Init priority to high");
|
||||
sc = rtems_task_set_priority( Init_id, 1, &priority );
|
||||
directive_failed( sc, "Set Init Priority" );
|
||||
|
||||
sc = rtems_task_get_affinity( Init_id, sizeof(cpu_set_t), &cpuset0 );
|
||||
directive_failed( sc, "Get Affinity of Init Task" );
|
||||
|
||||
|
||||
/* Get the number of processors that we are using. */
|
||||
cpu_count = rtems_smp_get_processor_count();
|
||||
|
||||
@@ -129,14 +129,14 @@ void Validate_affinity(void )
|
||||
|
||||
sc = rtems_task_start( Med_id[i], Task_1, i+1 );
|
||||
directive_failed( sc, "task start" );
|
||||
|
||||
|
||||
sc = rtems_task_get_affinity( Med_id[i], sizeof(cpu_set_t), &cpuset2 );
|
||||
directive_failed( sc, "Get Affinity of Medium Priority Task" );
|
||||
rtems_test_assert( CPU_EQUAL(&cpuset0, &cpuset2) );
|
||||
}
|
||||
|
||||
/*
|
||||
* Create low priority thread for each remaining cpu with the affinity
|
||||
/*
|
||||
* Create low priority thread for each remaining cpu with the affinity
|
||||
* set to only run on one cpu.
|
||||
*/
|
||||
puts( "Init - Create Low priority tasks");
|
||||
@@ -190,7 +190,7 @@ void Validate_affinity(void )
|
||||
|
||||
directive_failed( sc, "Low priority task set affinity" );
|
||||
}
|
||||
|
||||
|
||||
puts("Init - Validate affinity on Low priority tasks");
|
||||
CPU_COPY(&cpuset1, &cpuset0);
|
||||
for (i=0; i<cpu_count; i++){
|
||||
@@ -211,14 +211,14 @@ static void Init(rtems_task_argument arg)
|
||||
|
||||
puts( "\n\n*** SMP AFFINITY 1 ***" );
|
||||
|
||||
/* Initialize thread id */
|
||||
/* Initialize thread id */
|
||||
sc = rtems_task_ident( RTEMS_SELF, RTEMS_SEARCH_ALL_NODES, &Init_id );
|
||||
directive_failed( sc, "Identify Init Task" );
|
||||
|
||||
|
||||
Validate_setaffinity_errors();
|
||||
Validate_getaffinity_errors();
|
||||
Validate_affinity();
|
||||
|
||||
|
||||
puts( "*** END OF SMP AFFINITY TEST 1 ***" );
|
||||
rtems_test_exit(0);
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ void Validate_attrgetaffinity_errors(void);
|
||||
void Validate_attrsetaffinity_errors(void);
|
||||
void Validate_attr(void);
|
||||
|
||||
void Validate_attrgetaffinity_errors(void)
|
||||
void Validate_attrgetaffinity_errors(void)
|
||||
{
|
||||
int sc;
|
||||
cpu_set_t cpuset;
|
||||
@@ -53,7 +53,7 @@ void Validate_attrgetaffinity_errors(void)
|
||||
|
||||
}
|
||||
|
||||
void Validate_attrsetaffinity_errors(void)
|
||||
void Validate_attrsetaffinity_errors(void)
|
||||
{
|
||||
int sc;
|
||||
cpu_set_t cpuset;
|
||||
@@ -105,11 +105,11 @@ void Validate_attr(void )
|
||||
|
||||
|
||||
cpus = rtems_smp_get_processor_count();
|
||||
puts(
|
||||
puts(
|
||||
"Init - Validate pthread_attr_setaffinity_np and "
|
||||
"pthread_attr_getaffinity_np"
|
||||
);
|
||||
|
||||
|
||||
/* Set each cpu seperately in the affinity set */
|
||||
for ( i=0; i<cpus; i++ ){
|
||||
CPU_ZERO(&cpuset1);
|
||||
@@ -120,7 +120,7 @@ void Validate_attr(void )
|
||||
|
||||
sc = pthread_attr_getaffinity_np( &attr, sizeof(cpu_set_t), &cpuset2 );
|
||||
rtems_test_assert( sc == 0 );
|
||||
|
||||
|
||||
rtems_test_assert( CPU_EQUAL(&cpuset1, &cpuset2) );
|
||||
}
|
||||
}
|
||||
@@ -131,13 +131,13 @@ void *POSIX_Init(
|
||||
{
|
||||
puts( "\n\n*** SMP POSIX AFFINITY ATTRIBUTE TEST 1 ***" );
|
||||
|
||||
/* Initialize thread id */
|
||||
/* Initialize thread id */
|
||||
Init_id = pthread_self();
|
||||
|
||||
Validate_attrsetaffinity_errors();
|
||||
Validate_attrgetaffinity_errors();
|
||||
Validate_attr();
|
||||
|
||||
|
||||
puts( "*** END OF SMP POSIX AFFINITY ATTRIBUTE TEST 1 ***" );
|
||||
rtems_test_exit(0);
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ directives:
|
||||
|
||||
pthread_attr_getaffinity_np
|
||||
pthread_attr_setaffinity_np
|
||||
|
||||
|
||||
concepts:
|
||||
|
||||
+ Verify error conditions and functionality of pthread_attr_getaffinity_np
|
||||
|
||||
@@ -46,13 +46,13 @@ void Validate_setaffinity_errors(void)
|
||||
/* Verify pthread_setaffinity_np checks that all cpu's exist. */
|
||||
CPU_FILL(&cpuset);
|
||||
puts( "Init - pthread_setaffinity_np - Invalid cpu - EINVAL" );
|
||||
sc = pthread_setaffinity_np( Init_id, sizeof(cpu_set_t), &cpuset );
|
||||
sc = pthread_setaffinity_np( Init_id, sizeof(cpu_set_t), &cpuset );
|
||||
rtems_test_assert( sc == EINVAL );
|
||||
|
||||
|
||||
/* Verify pthread_setaffinity_np checks that at least one cpu is set */
|
||||
CPU_ZERO(&cpuset);
|
||||
puts( "Init - pthread_setaffinity_np - no cpu - EINVAL" );
|
||||
sc = pthread_setaffinity_np( Init_id, sizeof(cpu_set_t), &cpuset );
|
||||
sc = pthread_setaffinity_np( Init_id, sizeof(cpu_set_t), &cpuset );
|
||||
rtems_test_assert( sc == EINVAL );
|
||||
|
||||
/* Verify pthread_setaffinity_np checks that at thread id is valid */
|
||||
@@ -60,7 +60,7 @@ void Validate_setaffinity_errors(void)
|
||||
puts( "Init - pthread_setaffinity_np - Invalid thread - ESRCH" );
|
||||
sc = pthread_setaffinity_np( 999, sizeof(cpu_set_t), &cpuset );
|
||||
rtems_test_assert( sc == ESRCH );
|
||||
|
||||
|
||||
/* Verify pthread_setaffinity_np validates cpusetsize */
|
||||
puts( "Init - pthread_setaffinity_np - Invalid cpusetsize - EINVAL" );
|
||||
sc = pthread_setaffinity_np( Init_id, sizeof(cpu_set_t) * 2, &cpuset );
|
||||
@@ -72,7 +72,7 @@ void Validate_setaffinity_errors(void)
|
||||
rtems_test_assert( sc == EFAULT );
|
||||
}
|
||||
|
||||
void Validate_getaffinity_errors(void)
|
||||
void Validate_getaffinity_errors(void)
|
||||
{
|
||||
int sc;
|
||||
cpu_set_t cpuset;
|
||||
@@ -82,7 +82,7 @@ void Validate_getaffinity_errors(void)
|
||||
puts( "Init - pthread_getaffinity_np - Invalid thread - ESRCH" );
|
||||
sc = pthread_getaffinity_np( 999, sizeof(cpu_set_t), &cpuset );
|
||||
rtems_test_assert( sc == ESRCH );
|
||||
|
||||
|
||||
/* Verify pthread_getaffinity_np validates cpusetsize */
|
||||
puts( "Init - pthread_getaffinity_np - Invalid cpusetsize - EINVAL" );
|
||||
sc = pthread_getaffinity_np( Init_id, sizeof(cpu_set_t) * 2, &cpuset );
|
||||
@@ -102,10 +102,10 @@ void Validate_affinity(void )
|
||||
cpu_set_t cpuset2;
|
||||
uint32_t i;
|
||||
int sc;
|
||||
int cpu_count;
|
||||
int cpu_count;
|
||||
struct sched_param param;
|
||||
|
||||
|
||||
|
||||
|
||||
puts( "Init - Set Init priority to high");
|
||||
sc = pthread_getattr_np( Init_id, &attr );
|
||||
rtems_test_assert( sc == 0 );
|
||||
@@ -117,7 +117,7 @@ void Validate_affinity(void )
|
||||
|
||||
sc = pthread_getaffinity_np( Init_id, sizeof(cpu_set_t), &cpuset0 );
|
||||
rtems_test_assert( !sc );
|
||||
|
||||
|
||||
/* Get the number of processors that we are using. */
|
||||
cpu_count = rtems_smp_get_processor_count();
|
||||
|
||||
@@ -135,8 +135,8 @@ void Validate_affinity(void )
|
||||
rtems_test_assert( CPU_EQUAL(&cpuset0, &cpuset2) );
|
||||
}
|
||||
|
||||
/*
|
||||
* Create low priority thread for each remaining cpu with the affinity
|
||||
/*
|
||||
* Create low priority thread for each remaining cpu with the affinity
|
||||
* set to only run on one cpu.
|
||||
*/
|
||||
puts( "Init - Create Low priority tasks");
|
||||
@@ -177,7 +177,7 @@ void Validate_affinity(void )
|
||||
}
|
||||
rtems_test_assert( !sc );
|
||||
}
|
||||
|
||||
|
||||
puts("Init - Validate affinity on Low priority tasks");
|
||||
CPU_COPY(&cpuset1, &cpuset0);
|
||||
for (i=0; i<cpu_count; i++){
|
||||
@@ -198,13 +198,13 @@ void *POSIX_Init(
|
||||
{
|
||||
puts( "\n\n*** SMP POSIX AFFINITY ATTRIBUTE TEST 2 ***" );
|
||||
|
||||
/* Initialize thread id */
|
||||
/* Initialize thread id */
|
||||
Init_id = pthread_self();
|
||||
|
||||
|
||||
Validate_setaffinity_errors();
|
||||
Validate_getaffinity_errors();
|
||||
Validate_affinity();
|
||||
|
||||
|
||||
puts( "*** SMP POSIX AFFINITY ATTRIBUTE TEST 2 ***" );
|
||||
rtems_test_exit(0);
|
||||
}
|
||||
@@ -230,7 +230,7 @@ void *POSIX_Init(
|
||||
|
||||
#define CONFIGURE_SMP_MAXIMUM_PROCESSORS NUM_CPUS
|
||||
|
||||
#define CONFIGURE_MAXIMUM_POSIX_THREADS (NUM_CPUS*2)
|
||||
#define CONFIGURE_MAXIMUM_POSIX_THREADS (NUM_CPUS*2)
|
||||
|
||||
#define CONFIGURE_POSIX_INIT_THREAD_TABLE
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ directives:
|
||||
|
||||
pthread_getaffinity_np
|
||||
pthread_setaffinity_np
|
||||
|
||||
|
||||
concepts:
|
||||
|
||||
+ Verify error conditions and functionality of pthread_getaffinity_np
|
||||
|
||||
@@ -79,7 +79,7 @@ static void test_cpu_set_case_1(size_t cpu)
|
||||
printf( "Exercise CPU_ZERO, CPU_SET(%u), and CPU_ISET\n", cpu );
|
||||
CPU_ZERO(&set1);
|
||||
CPU_SET(cpu, &set1);
|
||||
|
||||
|
||||
/* test if all bits except 1 clear */
|
||||
for (i=0 ; i<CPU_SETSIZE ; i++) {
|
||||
if (i==cpu)
|
||||
|
||||
@@ -35,7 +35,7 @@ void test_cpu_and_case_1(size_t cpu1, size_t cpu2)
|
||||
/* AND set1 and set2 */
|
||||
printf( "Exercise CPU_AND with bits %d,%d\n",cpu1,cpu2 );
|
||||
CPU_AND(&set3, &set1, &set2);
|
||||
|
||||
|
||||
/* test if all bits clear except cpu1 */
|
||||
for (i=0 ; i<CPU_SETSIZE ; i++) {
|
||||
if (i== cpu1)
|
||||
@@ -53,7 +53,7 @@ void test_cpu_nand_case_1(size_t cpu1, size_t cpu2)
|
||||
/* NAND set1 and set2 */
|
||||
printf( "Exercise CPU_NAND with bits %d,%d\n",cpu1,cpu2 );
|
||||
CPU_NAND(&set3, &set1, &set2);
|
||||
|
||||
|
||||
/* test if all bits clear except cpu1 */
|
||||
for (i=0 ; i<CPU_SETSIZE ; i++) {
|
||||
if (i== cpu1)
|
||||
@@ -70,7 +70,7 @@ void test_cpu_or_case_1(size_t cpu1, size_t cpu2)
|
||||
/* OR set1 and set2 */
|
||||
printf( "Exercise CPU_OR with bits %d,%d\n",cpu1,cpu2 );
|
||||
CPU_OR(&set3, &set1, &set2);
|
||||
|
||||
|
||||
/* test if all bits clear except cpu1 */
|
||||
for (i=0 ; i<CPU_SETSIZE ; i++) {
|
||||
if ((i== cpu1) || (i==cpu2))
|
||||
@@ -87,7 +87,7 @@ void test_cpu_xor_case_1(size_t cpu1, size_t cpu2)
|
||||
/* XOR set1 and set2 */
|
||||
printf( "Exercise CPU_XOR with bits %d,%d\n",cpu1,cpu2 );
|
||||
CPU_XOR(&set3, &set1, &set2);
|
||||
|
||||
|
||||
/* test if all bits clear except cpu1 */
|
||||
for (i=0 ; i<CPU_SETSIZE ; i++) {
|
||||
if (i==cpu2)
|
||||
@@ -107,7 +107,7 @@ static void test_logic01_setup(size_t cpu1, size_t cpu2)
|
||||
CPU_SET(cpu2, &set1);
|
||||
CPU_COPY(&set2, &set1);
|
||||
CPU_CLR(cpu2, &set2);
|
||||
}
|
||||
}
|
||||
|
||||
void cpuset_logic_test()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user