Changeset 2077ae4c in rtems


Ignore:
Timestamp:
Aug 23, 2013, 9:52:01 AM (6 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
4.10
Children:
ab0da63e
Parents:
db99ce7c
git-author:
Sebastian Huber <sebastian.huber@…> (08/23/13 09:52:01)
git-committer:
Sebastian Huber <sebastian.huber@…> (08/26/13 08:22:18)
Message:

score: PR2140: _Thread_queue_Extract()

Return if the executing context performed the extract operation since
interrupts may interfere.

Location:
cpukit/score
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • cpukit/score/include/rtems/score/threadq.h

    rdb99ce7c r2077ae4c  
    114114 *  and cancels any timeouts associated with this blocking.
    115115 */
    116 void _Thread_queue_Extract(
     116bool _Thread_queue_Extract(
    117117  Thread_queue_Control *the_thread_queue,
    118118  Thread_Control       *the_thread
     
    190190 *  and cancels any timeouts associated with this blocking.
    191191 */
    192 void _Thread_queue_Extract_priority_helper(
     192bool _Thread_queue_Extract_priority_helper(
    193193  Thread_queue_Control *the_thread_queue,
    194194  Thread_Control       *the_thread,
     
    243243 *  and cancels any timeouts associated with this blocking.
    244244 */
    245 void _Thread_queue_Extract_fifo(
     245bool _Thread_queue_Extract_fifo(
    246246  Thread_queue_Control *the_thread_queue,
    247247  Thread_Control       *the_thread
  • cpukit/score/src/threadqextract.c

    rdb99ce7c r2077ae4c  
    4242 */
    4343
    44 void _Thread_queue_Extract(
     44bool _Thread_queue_Extract(
    4545  Thread_queue_Control *the_thread_queue,
    4646  Thread_Control       *the_thread
     
    5252   */
    5353  if  ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
    54     _Thread_queue_Extract_priority( the_thread_queue, the_thread );
     54    return _Thread_queue_Extract_priority( the_thread_queue, the_thread );
    5555  else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */
    56     _Thread_queue_Extract_fifo( the_thread_queue, the_thread );
     56    return _Thread_queue_Extract_fifo( the_thread_queue, the_thread );
    5757
    5858}
  • cpukit/score/src/threadqextractfifo.c

    rdb99ce7c r2077ae4c  
    4343 */
    4444
    45 void _Thread_queue_Extract_fifo(
     45bool _Thread_queue_Extract_fifo(
    4646  Thread_queue_Control *the_thread_queue __attribute__((unused)),
    4747  Thread_Control       *the_thread
     
    5454  if ( !_States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
    5555    _ISR_Enable( level );
    56     return;
     56    return false;
    5757  }
    5858
     
    7676#endif
    7777
     78  return true;
    7879}
  • cpukit/score/src/threadqextractpriority.c

    rdb99ce7c r2077ae4c  
    4444 */
    4545
    46 void _Thread_queue_Extract_priority_helper(
     46bool _Thread_queue_Extract_priority_helper(
    4747  Thread_queue_Control *the_thread_queue __attribute__((unused)),
    4848  Thread_Control       *the_thread,
     
    6363  if ( !_States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
    6464    _ISR_Enable( level );
    65     return;
     65    return false;
    6666  }
    6767
     
    104104  if ( requeuing ) {
    105105    _ISR_Enable( level );
    106     return;
     106    return true;
    107107  }
    108108
     
    120120    _Thread_MP_Free_proxy( the_thread );
    121121#endif
     122
     123  return true;
    122124}
Note: See TracChangeset for help on using the changeset viewer.