Sebastian Huber started a new discussion on 
cpukit/include/rtems/score/coremsg.h: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1164#note_147588

 >     *  when it does not contain a pending message.
 >     */
 >    Chain_Control Inactive_messages;
 > +  #if defined( RTEMS_POSIX_API )

I would decouple the provision of the bitmap control from 
`CORE_message_queue_Control` and instead split the message queue implementation 
to provide specialized routines for the priority queue support instead. This 
reduces the memory overhead and complexity for the RTEMS Classic API support.

It allows you to get rid of the dynamic allocation, if you can use something 
like this:
```c
typedef struct {
  CORE_message_queue_Control Base;
  Priority_bit_map_Control Queue;
  Priority_bit_map_Information Queue_information[ MQ_PRIO_MAX + 1U ];
  Chain_Control Queue_buckets[ MQ_PRIO_MAX + 1U ];
} CORE_priority_message_queue_Control;
```

-- 
View it on GitLab: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1164#note_147588
You're receiving this email because of your account on gitlab.rtems.org.


_______________________________________________
bugs mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/bugs

Reply via email to