summaryrefslogtreecommitdiffstats
path: root/cpukit/include/rtems/score/coremsg.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2020-09-23 16:47:58 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2020-09-28 07:16:01 +0200
commit4a4f41ed642cd5d9f4056b12d86bbf80e8da983a (patch)
tree40a7ff0913194c8aa9603dd47625816ae332ce01 /cpukit/include/rtems/score/coremsg.h
parentrtems: Remove Message_queue_Control::attribute_set (diff)
downloadrtems-4a4f41ed642cd5d9f4056b12d86bbf80e8da983a.tar.bz2
rtems: Add rtems_message_queue_construct()
In contrast to message queues created by rtems_message_queue_create(), the message queues constructed by this directive use a user-provided message buffer storage area. Add RTEMS_MESSAGE_QUEUE_BUFFER() to define a message buffer type for message buffer storage areas. Update #4007.
Diffstat (limited to 'cpukit/include/rtems/score/coremsg.h')
-rw-r--r--cpukit/include/rtems/score/coremsg.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/cpukit/include/rtems/score/coremsg.h b/cpukit/include/rtems/score/coremsg.h
index 220c9839a5..51c638bcc3 100644
--- a/cpukit/include/rtems/score/coremsg.h
+++ b/cpukit/include/rtems/score/coremsg.h
@@ -124,6 +124,16 @@ struct CORE_message_queue_Control {
* as part of destroying it.
*/
CORE_message_queue_Buffer *message_buffers;
+
+ /**
+ * @brief This member contains the optional message buffer storage area free
+ * handler.
+ *
+ * It may be NULL. In this case no action is performed to free the message
+ * buffer storage area.
+ */
+ void ( *free_message_buffers )( void * );
+
#if defined(RTEMS_SCORE_COREMSG_ENABLE_NOTIFICATION)
/** This is the routine invoked when the message queue transitions
* from zero (0) messages pending to one (1) message pending.