From 4f9ed26655c2659fcf697a281cb401aa919849bf Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 10 Oct 2017 07:13:37 +0200 Subject: posix: Constify default thread processor affinity Set default thread processor affinity to all processors of the pre-allocated set. This allows to constify the _POSIX_Threads_Default_attributes. Update #2514. --- cpukit/posix/include/rtems/posix/pthreadimpl.h | 2 +- cpukit/posix/src/pthread.c | 19 ++----------------- 2 files changed, 3 insertions(+), 18 deletions(-) (limited to 'cpukit/posix') diff --git a/cpukit/posix/include/rtems/posix/pthreadimpl.h b/cpukit/posix/include/rtems/posix/pthreadimpl.h index 9e5314b2c2..6b338f9d5c 100644 --- a/cpukit/posix/include/rtems/posix/pthreadimpl.h +++ b/cpukit/posix/include/rtems/posix/pthreadimpl.h @@ -51,7 +51,7 @@ extern Thread_Information _POSIX_Threads_Information; /** * This variable contains the default POSIX Thread attributes. */ -extern pthread_attr_t _POSIX_Threads_Default_attributes; +extern const pthread_attr_t _POSIX_Threads_Default_attributes; RTEMS_INLINE_ROUTINE void _POSIX_Threads_Sporadic_timer_insert( Thread_Control *the_thread, diff --git a/cpukit/posix/src/pthread.c b/cpukit/posix/src/pthread.c index 1d791df7eb..171d0366df 100644 --- a/cpukit/posix/src/pthread.c +++ b/cpukit/posix/src/pthread.c @@ -49,7 +49,7 @@ Thread_Information _POSIX_Threads_Information; * NOTE: Be careful .. if the default attribute set changes, * _POSIX_Threads_Initialize_user_threads will need to be examined. */ -pthread_attr_t _POSIX_Threads_Default_attributes = { +const pthread_attr_t _POSIX_Threads_Default_attributes = { .is_initialized = true, /* is_initialized */ .stackaddr = NULL, /* stackaddr */ .stacksize = 0, /* stacksize -- will be adjusted to minimum */ @@ -79,7 +79,7 @@ pthread_attr_t _POSIX_Threads_Default_attributes = { sizeof( _POSIX_Threads_Default_attributes.affinitysetpreallocated ), .affinityset = &_POSIX_Threads_Default_attributes.affinitysetpreallocated, - .affinitysetpreallocated = {{0x1}} + .affinitysetpreallocated = { { -1L } } }; void _POSIX_Threads_Sporadic_timer( Watchdog_Control *watchdog ) @@ -243,21 +243,6 @@ User_extensions_Control _POSIX_Threads_User_extensions = { */ static void _POSIX_Threads_Manager_initialization(void) { - #if defined(RTEMS_SMP) - const CPU_set_Control *affinity; - pthread_attr_t *attr; - - /* Initialize default attribute. */ - attr = &_POSIX_Threads_Default_attributes; - - /* Initialize the affinity to be the default cpu set for the system */ - affinity = _CPU_set_Default(); - _Assert( affinity->setsize == sizeof( attr->affinitysetpreallocated ) ); - attr->affinityset = &attr->affinitysetpreallocated; - attr->affinitysetsize = affinity->setsize; - CPU_COPY( affinity->set, attr->affinityset ); - #endif - _Thread_Initialize_information( &_POSIX_Threads_Information, /* object information table */ OBJECTS_POSIX_API, /* object API */ -- cgit v1.2.3