From 108c4b085ccf88e9644fccbf5cec1b79c39e67e4 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 18 Feb 2011 15:12:44 +0000 Subject: 2011-02-18 Joel Sherrill * sapi/include/confdefs.h, score/Makefile.am, score/include/rtems/score/scheduler.h, score/include/rtems/score/schedulerpriority.h, score/include/rtems/score/thread.h, score/inline/rtems/score/scheduler.inl, score/inline/rtems/score/schedulerpriority.inl, score/src/scheduler.c, score/src/schedulerpriority.c, score/src/schedulerpriorityblock.c, score/src/schedulerpriorityschedule.c, score/src/schedulerpriorityunblock.c, score/src/schedulerpriorityyield.c, score/src/threadchangepriority.c, score/src/threadclose.c, score/src/threadinitialize.c, score/src/threadsetpriority.c, score/src/threadsettransient.c: Significant clean up on Scheduler Plugin Interface. Names were shortened. Missing operations added. Many scheduler files had unneeded includes removed. Made pointer to scheduler information in Thread_Control and Scheduler_Control a void * pointer because the thread and scheduler wrapper should be unaware of scheduler types AND this is broken for user provided schedulers. * score/src/schedulerpriorityallocate.c, score/src/schedulerpriorityenqueue.c, score/src/schedulerpriorityenqueuefirst.c, score/src/schedulerpriorityextract.c, score/src/schedulerpriorityfree.c, score/src/schedulerpriorityupdate.c: New files. * score/src/schedulerprioritythreadschedulerallocate.c, score/src/schedulerprioritythreadschedulerfree.c, score/src/schedulerprioritythreadschedulerupdate.c: Removed. --- cpukit/score/inline/rtems/score/scheduler.inl | 51 ++++++++++++++++++++++----- 1 file changed, 42 insertions(+), 9 deletions(-) (limited to 'cpukit/score/inline/rtems/score/scheduler.inl') diff --git a/cpukit/score/inline/rtems/score/scheduler.inl b/cpukit/score/inline/rtems/score/scheduler.inl index 813365fcf9..4a6c74cbf8 100644 --- a/cpukit/score/inline/rtems/score/scheduler.inl +++ b/cpukit/score/inline/rtems/score/scheduler.inl @@ -93,37 +93,70 @@ RTEMS_INLINE_ROUTINE void _Scheduler_Unblock( _Scheduler.Operations.unblock( the_thread ); } -/** @brief _Scheduler_Thread_scheduler_allocate +/** @brief _Scheduler_Allocate * * This routine allocates @a the_thread->scheduler */ -RTEMS_INLINE_ROUTINE void* _Scheduler_Thread_scheduler_allocate( +RTEMS_INLINE_ROUTINE void* _Scheduler_Allocate( Thread_Control *the_thread ) { - return _Scheduler.Operations.scheduler_allocate( the_thread ); + return _Scheduler.Operations.allocate( the_thread ); } -/** @brief _Scheduler_Thread_scheduler_free +/** @brief _Scheduler_Free * * This routine frees @a the_thread->scheduler */ -RTEMS_INLINE_ROUTINE void _Scheduler_Thread_scheduler_free( +RTEMS_INLINE_ROUTINE void _Scheduler_Free( Thread_Control *the_thread ) { - return _Scheduler.Operations.scheduler_free( the_thread ); + return _Scheduler.Operations.free( the_thread ); } -/** @brief _Scheduler_Thread_scheduler_update +/** @brief _Scheduler_Update * * This routine updates @a the_thread->scheduler */ -RTEMS_INLINE_ROUTINE void _Scheduler_Thread_scheduler_update( +RTEMS_INLINE_ROUTINE void _Scheduler_Update( Thread_Control *the_thread ) { - _Scheduler.Operations.scheduler_update( the_thread ); + _Scheduler.Operations.update( the_thread ); +} + +/** @brief _Scheduler_Enqueue + * + * This routine enqueue @a the_thread->scheduler + */ +RTEMS_INLINE_ROUTINE void _Scheduler_Enqueue( + Thread_Control *the_thread +) +{ + _Scheduler.Operations.enqueue( the_thread ); +} + +/** @brief _Scheduler_Enqueue_first + * + * This routine enqueue_first @a the_thread->scheduler + */ +RTEMS_INLINE_ROUTINE void _Scheduler_Enqueue_first( + Thread_Control *the_thread +) +{ + _Scheduler.Operations.enqueue_first( the_thread ); +} + +/** @brief _Scheduler_Extract + * + * This routine extract @a the_thread->scheduler + */ +RTEMS_INLINE_ROUTINE void _Scheduler_Extract( + Thread_Control *the_thread +) +{ + _Scheduler.Operations.extract( the_thread ); } /**@}*/ -- cgit v1.2.3