Attention is currently required from: jolly.
pespin 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 7:
(2 comments)
File src/core/osmo_io.c:
https://gerrit.osmocom.org/c/libosmocore/+/40493/comment/e78c3773_ac38c49c?u... : PS4, Line 444: /* Re-enqueue remaining buffers. */
Then we must change the way the tx_queue stores. […]
No, what I mean is that in here a function should be called to re-arrange msgs inside msghdrs in the list to make sure we fill the arrays of msgs of the first msghdrs enqueued. Otherwise we may end up submitting half-filled msghdr->{msg,iov}[] as a consequence of this code path.
Feel free to submit a proper function to squeeze those in a follow-up commit, but at least add a TODO here in a comment explaining that. IMHO this should be implemented before doing any benchmarking.
File src/core/osmo_io.c:
https://gerrit.osmocom.org/c/libosmocore/+/40493/comment/426576b2_c1ebc583?u... : PS7, Line 442: /* Re-enqueue the complete msgb. */ This can be moved to the top of the function before the for loop, to simplify function now that you added the loop.