summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2014-04-28 09:56:33 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2014-04-28 09:56:33 +0200
commita336d51b09b81610b8c4905a32521c3316b1a820 (patch)
treeb22d826df4d382f7b07450bbd227ea4b6b1c5213
parentsapi: Add profiling done message (diff)
downloadrtems-a336d51b09b81610b8c4905a32521c3316b1a820.tar.bz2
score: Avoid copy and paste
-rw-r--r--cpukit/score/include/rtems/score/schedulersmpimpl.h34
1 files changed, 15 insertions, 19 deletions
diff --git a/cpukit/score/include/rtems/score/schedulersmpimpl.h b/cpukit/score/include/rtems/score/schedulersmpimpl.h
index 20c5d17ee7..c3e11e6dc6 100644
--- a/cpukit/score/include/rtems/score/schedulersmpimpl.h
+++ b/cpukit/score/include/rtems/score/schedulersmpimpl.h
@@ -192,16 +192,13 @@ static inline void _Scheduler_SMP_Schedule_highest_ready(
( *move_from_ready_to_scheduled )( self, highest_ready );
}
-static inline void _Scheduler_SMP_Block(
+static inline void _Scheduler_SMP_Schedule(
Scheduler_SMP_Context *self,
Thread_Control *thread,
- Scheduler_SMP_Extract extract,
Scheduler_SMP_Get_highest_ready get_highest_ready,
Scheduler_SMP_Move move_from_ready_to_scheduled
)
{
- ( *extract )( self, thread );
-
if ( thread->is_in_the_air ) {
thread->is_in_the_air = false;
@@ -214,32 +211,31 @@ static inline void _Scheduler_SMP_Block(
}
}
-static inline void _Scheduler_SMP_Extract(
+static inline void _Scheduler_SMP_Block(
Scheduler_SMP_Context *self,
Thread_Control *thread,
- Scheduler_SMP_Extract extract
+ Scheduler_SMP_Extract extract,
+ Scheduler_SMP_Get_highest_ready get_highest_ready,
+ Scheduler_SMP_Move move_from_ready_to_scheduled
)
{
( *extract )( self, thread );
+
+ _Scheduler_SMP_Schedule(
+ self,
+ thread,
+ get_highest_ready,
+ move_from_ready_to_scheduled
+ );
}
-static inline void _Scheduler_SMP_Schedule(
+static inline void _Scheduler_SMP_Extract(
Scheduler_SMP_Context *self,
Thread_Control *thread,
- Scheduler_SMP_Get_highest_ready get_highest_ready,
- Scheduler_SMP_Move move_from_ready_to_scheduled
+ Scheduler_SMP_Extract extract
)
{
- if ( thread->is_in_the_air ) {
- thread->is_in_the_air = false;
-
- _Scheduler_SMP_Schedule_highest_ready(
- self,
- thread,
- get_highest_ready,
- move_from_ready_to_scheduled
- );
- }
+ ( *extract )( self, thread );
}
static inline void _Scheduler_SMP_Insert_scheduled_lifo(