Changeset 53fb837a in rtems for cpukit/score/macros


Ignore:
Timestamp:
Jan 13, 2000, 7:25:15 PM (20 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, master
Children:
85d62357
Parents:
ee4ddd83
Message:

POSIX message queues now include complete functionality including
blocking sends when the queue is full. The SuperCore? was enhanced
to support blocking on send. The existing POSIX API was debugged
and numerous test cases were added to psxmsgq01 by Jennifer Averett.
SuperCore? enhancements and resulting modifications to other APIs
were done by Joel.

There is one significant point of interpretation for the POSIX API.
What happens to threads already blocked on a message queue when the
mode of that same message queue is changed from blocking to non-blocking?
We decided to unblock all waiting tasks with an EAGAIN error just
as if a non-blocking version of the same operation had returned
unsatisfied. This case is not discussed in the POSIX standard and
other implementations may have chosen differently.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • cpukit/score/macros/rtems/score/coremsg.inl

    ree4ddd83 r53fb837a  
    2424 
    2525#define _CORE_message_queue_Send( _the_message_queue, _buffer, _size, \
    26 _id, _api_message_queue_mp_support ) \
     26       _id, _api_message_queue_mp_support, _wait, _timeout ) \
    2727  _CORE_message_queue_Submit( (_the_message_queue), (_buffer), (_size), \
    28      (_id), (_api_message_queue_mp_support), CORE_MESSAGE_QUEUE_SEND_REQUEST )
     28     (_id), (_api_message_queue_mp_support), \
     29     CORE_MESSAGE_QUEUE_SEND_REQUEST, (_wait), (_timeout)
    2930 
    3031/*PAGE
     
    3536 
    3637#define _CORE_message_queue_Urgent( _the_message_queue, _buffer, _size, \
    37 _id, _api_message_queue_mp_support ) \
     38       _id, _api_message_queue_mp_support, _wait, _timeout ) \
    3839  _CORE_message_queue_Submit( (_the_message_queue), (_buffer), (_size), \
    39      (_id), (_api_message_queue_mp_support), CORE_MESSAGE_QUEUE_URGENT_REQUEST )
     40     (_id), (_api_message_queue_mp_support), \
     41     CORE_MESSAGE_QUEUE_URGENT_REQUEST, (_wait), (_timeout)
    4042
    4143/*PAGE
Note: See TracChangeset for help on using the changeset viewer.