summaryrefslogtreecommitdiffstats
path: root/cpukit/score/src
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-03-12 08:31:35 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-03-16 12:48:37 +0100
commitc9a41b0043e67ed7f1be98f19b5f5fda994ceb55 (patch)
tree20a3eca7fab35a9f4e802d3fe3c01a57c8ca13b1 /cpukit/score/src
parentvalidation: Task create/construct (diff)
downloadrtems-c9a41b0043e67ed7f1be98f19b5f5fda994ceb55.tar.bz2
score: Add Thread_Configuration::cpu_time_budget
Move the CPU time budget to the thread configuration. This simplifies _Thread_Initialize().
Diffstat (limited to 'cpukit/score/src')
-rw-r--r--cpukit/score/src/threadinitialize.c18
1 files changed, 1 insertions, 17 deletions
diff --git a/cpukit/score/src/threadinitialize.c b/cpukit/score/src/threadinitialize.c
index f11e35dcf3..18c98c6995 100644
--- a/cpukit/score/src/threadinitialize.c
+++ b/cpukit/score/src/threadinitialize.c
@@ -27,7 +27,6 @@
#include <rtems/score/tls.h>
#include <rtems/score/userextimpl.h>
#include <rtems/score/watchdogimpl.h>
-#include <rtems/config.h>
void _Thread_Free(
Thread_Information *information,
@@ -176,6 +175,7 @@ static bool _Thread_Try_initialize(
*/
the_thread->is_fp = config->is_fp;
+ the_thread->cpu_time_budget = config->cpu_time_budget;
the_thread->Start.isr_level = config->isr_level;
the_thread->Start.is_preemptible = config->is_preemptible;
the_thread->Start.budget_algorithm = config->budget_algorithm;
@@ -184,22 +184,6 @@ static bool _Thread_Try_initialize(
_Thread_Timer_initialize( &the_thread->Timer, cpu );
- switch ( config->budget_algorithm ) {
- case THREAD_CPU_BUDGET_ALGORITHM_NONE:
- case THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE:
- break;
- #if defined(RTEMS_SCORE_THREAD_ENABLE_EXHAUST_TIMESLICE)
- case THREAD_CPU_BUDGET_ALGORITHM_EXHAUST_TIMESLICE:
- the_thread->cpu_time_budget =
- rtems_configuration_get_ticks_per_timeslice();
- break;
- #endif
- #if defined(RTEMS_SCORE_THREAD_ENABLE_SCHEDULER_CALLOUT)
- case THREAD_CPU_BUDGET_ALGORITHM_CALLOUT:
- break;
- #endif
- }
-
#if defined(RTEMS_SMP)
scheduler_node = NULL;
scheduler_node_for_index = the_thread->Scheduler.nodes;