On 2013-08-09 07:54, Sebastian Huber wrote:
On 2013-08-08 22:00, Chris Johns wrote:
Sebastian Huber wrote:
/**
- * This function returns true if the currently executing thread
- * is also the heir thread, and false otherwise.
- */
-
-RTEMS_INLINE_ROUTINE bool _Thread_Is_executing_also_the_heir( void )
Why not pass the 'the_thread' to this call and keep the logic local rather than
...
+ if ( _Thread_Is_executing( the_thread) || _Thread_Is_heir( the_thread ) )
.. and ..
+ if ( _Thread_Is_executing( the_thread) || _Thread_Is_heir( the_thread ) )
The code ...
if ( _Thread_Is_executing_also_the_heir( the_thread ) )
... clearly describes the intent rather than me needing to check the logic of
the above operation is correct in the context and not a copy and paste error.
Small mistakes in this area can be difficult to find.
Chris
_Thread_Is_executing( the_thread) || _Thread_Is_heir( the_thread )
is not equal to
_Thread_Is_executing_also_the_heir( void )
The copy and paste is on a higher level, e.g. we may use this:
RTEMS_INLINE_ROUTINE void _Scheduler_Generic_block(
void ( *extract )( Thread_Control *),
void ( *schedule )( Thread_Control *),
Thread_Control *thread
)
{
( *extract )( thread );
if ( _Thread_Is_executing( the_thread) || _Thread_Is_heir( the_thread ) ) {
( *schedule )( thread, true );
}
}
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : [email protected]
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
_______________________________________________
rtems-devel mailing list
[email protected]
http://www.rtems.org/mailman/listinfo/rtems-devel