Joel Sherrill commented: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5040#note_108391


It looks like the aio enqueue process will insert requests on to the one 
associated with the thread for that file descriptor. But if I am reading this 
code right, the requests are placed in LIFO order.

```
    while (
      req->aiocbp->aio_reqprio > prio &&
      !rtems_chain_is_tail( chain, node )
    ) {
```
I think that should be >= prio so the scan for the insertion point will put new 
requests at the same priority at the end of the same priority ones. If I am 
reading this right, changing to >= prio should address your concern.

I think all requested operations on a single fd should be processed in priority 
order and FIFO order when at the same priority.

-- 
View it on GitLab: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5040#note_108391
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