diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-11-08 14:37:35 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-11-09 08:12:11 +0100 |
commit | 7147dc43b874271a0d4c14bbbc8ea10d1ed57cef (patch) | |
tree | 75c26dd9ef681f3558c6f96982e22a22454e2513 /cpukit/posix/src/psxtransschedparam.c | |
parent | sptests/spconsole01: New test (diff) | |
download | rtems-7147dc43b874271a0d4c14bbbc8ea10d1ed57cef.tar.bz2 |
posix: Remove POSIX_API_Control::schedpolicy
Use the thread CPU budget algorithm to determine the scheduler policy.
This fixes also pthread_getschedparam() for Classic tasks.
Update #2514.
Diffstat (limited to 'cpukit/posix/src/psxtransschedparam.c')
-rw-r--r-- | cpukit/posix/src/psxtransschedparam.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/cpukit/posix/src/psxtransschedparam.c b/cpukit/posix/src/psxtransschedparam.c index fb501b0717..86d8ff0894 100644 --- a/cpukit/posix/src/psxtransschedparam.c +++ b/cpukit/posix/src/psxtransschedparam.c @@ -23,6 +23,23 @@ #include <rtems/posix/pthreadimpl.h> +int _POSIX_Thread_Translate_to_sched_policy( + Thread_CPU_budget_algorithms budget_algorithm +) +{ + switch ( budget_algorithm ) { + case THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE: + return SCHED_OTHER; + case THREAD_CPU_BUDGET_ALGORITHM_EXHAUST_TIMESLICE: + return SCHED_RR; + case THREAD_CPU_BUDGET_ALGORITHM_CALLOUT: + return SCHED_SPORADIC; + default: + _Assert( budget_algorithm == THREAD_CPU_BUDGET_ALGORITHM_NONE ); + return SCHED_FIFO; + } +} + int _POSIX_Thread_Translate_sched_param( int policy, struct sched_param *param, |