Attention is currently required from: pespin.
jolly has posted comments on this change by jolly. ( https://gerrit.osmocom.org/c/libosmocore/+/40493?usp=email )
Change subject: Add multiple messages buffers to io_uring write operations ......................................................................
Patch Set 5:
(5 comments)
File src/core/osmo_io.c:
https://gerrit.osmocom.org/c/libosmocore/+/40493/comment/9a03f700_54103a7a?u... : PS4, Line 248: lh = iofd->tx_queue.msg_queue.prev;
fyi we have llist_last(). […]
I added the suggested llist_last_entry_or_null().
https://gerrit.osmocom.org/c/libosmocore/+/40493/comment/5085c89f_99ed56d1?u... : PS4, Line 451: if (rc < chunk)
shouldn't this case be already handled in the if path in line 431?
No, only if the write is incomplete, it is handled above.
https://gerrit.osmocom.org/c/libosmocore/+/40493/comment/46a84546_d8c452d4?u... : PS4, Line 517: msghdr = iofd_txqueue_tail(iofd);
why are you picking the tail here? Because the assumption is that the other before it are already fi […]
Done
https://gerrit.osmocom.org/c/libosmocore/+/40493/comment/53dc8cce_d0bb95e1?u... : PS4, Line 531:
you can simply do "idx = msghdr->msg_len - 1;" here, and simplify both branches above.
Done
https://gerrit.osmocom.org/c/libosmocore/+/40493/comment/d18c9e7d_603cd14e?u... : PS4, Line 539: rc = iofd_txqueue_enqueue(iofd, msghdr);
are you submitting to io_uring queue inside here? Because then it looks like yoy may be modifying st […]
If io_uring processes a msghdr, it has been removed from the queue before, so everything within the queue is not yet handled.