Issue created by Sebastian Huber: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/work_items/5792



In an interrupt, the immediate path of `_CORE_message_queue_Seize()` stores the 
priority of the message in `Wait.count` of the interrupted thread. If that 
thread is in the intend to block window of `_Event_Seize()`, the store replaces 
its event condition. The event wait of that thread then ends only with a 
timeout.

`_POSIX_Message_queue_Receive_support()` reads the priority from `Wait.count` 
after it releases the queue lock. An interrupt which receives a message in 
between changes the priority which `mq_receive()` returns.

Backport of #5789 to the 6.3 branch. This description was created with Claude 
Code assistance.

-- 
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/work_items/5792
You're receiving this email because of your account on gitlab.rtems.org. 
Unsubscribe from this thread: 
https://gitlab.rtems.org/-/namespace/49/sent_notifications/5-btf5aq685m3voy8g2nct10yh6-1d/unsubscribe
 | Manage all notifications: https://gitlab.rtems.org/-/profile/notifications | 
Help: https://gitlab.rtems.org/help


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

Reply via email to