[PATCH 2/2] Simplify get affinitiy directives
Sebastian Huber
sebastian.huber at embedded-brains.de
Mon Apr 26 08:40:57 UTC 2021
There is no need to disable thread dispatching to get the affinity of a
task.
---
cpukit/posix/src/pthreadgetaffinitynp.c | 3 ---
cpukit/rtems/src/taskgetaffinity.c | 3 ---
2 files changed, 6 deletions(-)
diff --git a/cpukit/posix/src/pthreadgetaffinitynp.c b/cpukit/posix/src/pthreadgetaffinitynp.c
index b904aea36c..f30ae54c2a 100644
--- a/cpukit/posix/src/pthreadgetaffinitynp.c
+++ b/cpukit/posix/src/pthreadgetaffinitynp.c
@@ -38,7 +38,6 @@ int pthread_getaffinity_np(
{
Thread_Control *the_thread;
ISR_lock_Context lock_context;
- Per_CPU_Control *cpu_self;
Status_Control status;
if ( cpuset == NULL ) {
@@ -51,7 +50,6 @@ int pthread_getaffinity_np(
return ESRCH;
}
- cpu_self = _Thread_Dispatch_disable_critical( &lock_context );
_Thread_State_acquire_critical( the_thread, &lock_context );
status = _Scheduler_Get_affinity(
@@ -61,7 +59,6 @@ int pthread_getaffinity_np(
);
_Thread_State_release( the_thread, &lock_context );
- _Thread_Dispatch_enable( cpu_self );
return _POSIX_Get_error( status );
}
diff --git a/cpukit/rtems/src/taskgetaffinity.c b/cpukit/rtems/src/taskgetaffinity.c
index 6ced283393..09349c2da9 100644
--- a/cpukit/rtems/src/taskgetaffinity.c
+++ b/cpukit/rtems/src/taskgetaffinity.c
@@ -33,7 +33,6 @@ rtems_status_code rtems_task_get_affinity(
{
Thread_Control *the_thread;
ISR_lock_Context lock_context;
- Per_CPU_Control *cpu_self;
Status_Control status;
if ( cpuset == NULL ) {
@@ -52,7 +51,6 @@ rtems_status_code rtems_task_get_affinity(
return RTEMS_INVALID_ID;
}
- cpu_self = _Thread_Dispatch_disable_critical( &lock_context );
_Thread_State_acquire_critical( the_thread, &lock_context );
status = _Scheduler_Get_affinity(
@@ -62,6 +60,5 @@ rtems_status_code rtems_task_get_affinity(
);
_Thread_State_release( the_thread, &lock_context );
- _Thread_Dispatch_enable( cpu_self );
return _Status_Get( status );
}
--
2.26.2
More information about the devel
mailing list