summaryrefslogtreecommitdiffstats
path: root/cpukit/posix/include
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-05-11 13:42:58 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-05-12 13:24:41 +0200
commit8bc6bf28aa098a03c25763e3c59274874bfbe3da (patch)
treec7b1434c02d96b48cba14c3bcfeb2c865c4f816f /cpukit/posix/include
parentscore: Avoid Giant lock _Scheduler_Get_affinity() (diff)
downloadrtems-8bc6bf28aa098a03c25763e3c59274874bfbe3da.tar.bz2
posix: Avoid Giant lock for some pthread functions
Avoid Giant lock for pthread_getattr_np(), pthread_setschedparam() and pthread_getschedparam(). Replace POSIX threads scheduler lock with thread state lock. Update #2555.
Diffstat (limited to 'cpukit/posix/include')
-rw-r--r--cpukit/posix/include/rtems/posix/pthreadimpl.h17
-rw-r--r--cpukit/posix/include/rtems/posix/threadsup.h2
2 files changed, 0 insertions, 19 deletions
diff --git a/cpukit/posix/include/rtems/posix/pthreadimpl.h b/cpukit/posix/include/rtems/posix/pthreadimpl.h
index ef5821e48f..42f10b08bc 100644
--- a/cpukit/posix/include/rtems/posix/pthreadimpl.h
+++ b/cpukit/posix/include/rtems/posix/pthreadimpl.h
@@ -223,23 +223,6 @@ RTEMS_INLINE_ROUTINE Thread_Control *_POSIX_Threads_Join_dequeue(
);
}
-RTEMS_INLINE_ROUTINE void _POSIX_Threads_Scheduler_acquire(
- POSIX_API_Control *api,
- ISR_lock_Context *lock_context
-)
-{
- _ISR_lock_ISR_disable_and_acquire( &api->Scheduler_lock, lock_context );
-}
-
-RTEMS_INLINE_ROUTINE void _POSIX_Threads_Scheduler_release(
- POSIX_API_Control *api,
- ISR_lock_Context *lock_context
-)
-{
- _ISR_lock_Release_and_ISR_enable( &api->Scheduler_lock, lock_context );
-}
-
-
/** @} */
#ifdef __cplusplus
diff --git a/cpukit/posix/include/rtems/posix/threadsup.h b/cpukit/posix/include/rtems/posix/threadsup.h
index 93ba2c1c7c..8109921270 100644
--- a/cpukit/posix/include/rtems/posix/threadsup.h
+++ b/cpukit/posix/include/rtems/posix/threadsup.h
@@ -52,8 +52,6 @@ typedef struct {
/** This is the set of threads waiting for the thread to exit. */
Thread_queue_Control Join_List;
/** This is the thread's current scheduling policy. */
- ISR_LOCK_MEMBER( Scheduler_lock )
- /** This is the thread's current scheduling policy. */
int schedpolicy;
/** This is the thread's current set of scheduling parameters. */
struct sched_param schedparam;