summaryrefslogtreecommitdiffstats
path: root/cpukit/posix/include/rtems/posix/pthreadattrimpl.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-10-17 09:20:20 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-10-17 11:10:00 +0200
commit3f3f42482daa45aff3647f34afb4e2c4eca242cd (patch)
treeff7e96eddeacf3ea09547d1f7b3b2fb83f9b4e7d /cpukit/posix/include/rtems/posix/pthreadattrimpl.h
parentposix: Move POSIX_API_Control::thread (diff)
downloadrtems-3f3f42482daa45aff3647f34afb4e2c4eca242cd.tar.bz2
posix: Remove POSIX_API_Control::schedparam
Move sporadic server scheduler parameters to POSIX_API_Control::Sporadic. Remove redundant scheduler priority parameter. Update #2514.
Diffstat (limited to '')
-rw-r--r--cpukit/posix/include/rtems/posix/pthreadattrimpl.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/cpukit/posix/include/rtems/posix/pthreadattrimpl.h b/cpukit/posix/include/rtems/posix/pthreadattrimpl.h
index a52be931a1..1e5105deab 100644
--- a/cpukit/posix/include/rtems/posix/pthreadattrimpl.h
+++ b/cpukit/posix/include/rtems/posix/pthreadattrimpl.h
@@ -24,6 +24,8 @@
#include <rtems/score/basedefs.h>
#include <rtems/score/assert.h>
+#include <rtems/posix/priorityimpl.h>
+#include <rtems/posix/threadsup.h>
#ifdef __cplusplus
extern "C" {
@@ -61,6 +63,22 @@ RTEMS_INLINE_ROUTINE void _POSIX_Threads_Initialize_attributes(
);
}
+RTEMS_INLINE_ROUTINE void _POSIX_Threads_Get_sched_param_sporadic(
+ const Thread_Control *the_thread,
+ const POSIX_API_Control *api,
+ const Scheduler_Control *scheduler,
+ struct sched_param *param
+)
+{
+ param->sched_ss_low_priority = _POSIX_Priority_From_core(
+ scheduler,
+ api->Sporadic.Low_priority.priority
+ );
+ param->sched_ss_repl_period = api->Sporadic.sched_ss_repl_period;
+ param->sched_ss_init_budget = api->Sporadic.sched_ss_init_budget;
+ param->sched_ss_max_repl = api->Sporadic.sched_ss_max_repl;
+}
+
/** @} */
#ifdef __cplusplus