From 9a78f8a5076687a8744991998ee6119f87db12a8 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 16 Jun 2016 17:08:54 +0200 Subject: score: Modify release job scheduler operation Pass the deadline in watchdog ticks to the scheduler. Update #2173. --- cpukit/score/src/schedulercbsreleasejob.c | 2 +- cpukit/score/src/schedulerdefaultreleasejob.c | 8 ++++---- cpukit/score/src/scheduleredfreleasejob.c | 5 ++--- 3 files changed, 7 insertions(+), 8 deletions(-) (limited to 'cpukit/score/src') diff --git a/cpukit/score/src/schedulercbsreleasejob.c b/cpukit/score/src/schedulercbsreleasejob.c index b8208292b8..124c02bac0 100644 --- a/cpukit/score/src/schedulercbsreleasejob.c +++ b/cpukit/score/src/schedulercbsreleasejob.c @@ -24,7 +24,7 @@ void _Scheduler_CBS_Release_job( const Scheduler_Control *scheduler, Thread_Control *the_thread, - uint32_t deadline + uint64_t deadline ) { Scheduler_CBS_Node *node; diff --git a/cpukit/score/src/schedulerdefaultreleasejob.c b/cpukit/score/src/schedulerdefaultreleasejob.c index 90593abc44..db4ab0e8e1 100644 --- a/cpukit/score/src/schedulerdefaultreleasejob.c +++ b/cpukit/score/src/schedulerdefaultreleasejob.c @@ -24,10 +24,10 @@ void _Scheduler_default_Release_job( const Scheduler_Control *scheduler, Thread_Control *the_thread, - uint32_t deadline + uint64_t deadline ) { - ( void ) scheduler; - ( void ) the_thread; - ( void ) deadline; + (void) scheduler; + (void) the_thread; + (void) deadline; } diff --git a/cpukit/score/src/scheduleredfreleasejob.c b/cpukit/score/src/scheduleredfreleasejob.c index 2c3db65b64..b7c83a55ad 100644 --- a/cpukit/score/src/scheduleredfreleasejob.c +++ b/cpukit/score/src/scheduleredfreleasejob.c @@ -25,7 +25,7 @@ void _Scheduler_EDF_Release_job( const Scheduler_Control *scheduler, Thread_Control *the_thread, - uint32_t deadline + uint64_t deadline ) { Priority_Control new_priority; @@ -35,8 +35,7 @@ void _Scheduler_EDF_Release_job( if (deadline) { /* Initializing or shifting deadline. */ - new_priority = (_Watchdog_Ticks_since_boot + deadline) - & ~SCHEDULER_EDF_PRIO_MSB; + new_priority = (uint32_t) deadline & ~SCHEDULER_EDF_PRIO_MSB; } else { /* Switch back to background priority. */ -- cgit v1.2.3