Attention is currently required from: jolly.
pespin has posted comments on this change by jolly. ( https://gerrit.osmocom.org/c/libosmocore/+/40494?usp=email )
Change subject: Send multiple read/recvfrom SQEs in advance ......................................................................
Patch Set 7:
(6 comments)
File src/core/osmo_io_uring.c:
https://gerrit.osmocom.org/c/libosmocore/+/40494/comment/a381fd9b_75b95dab?u... : PS7, Line 240: iofd->u.uring.read_msghdr = NULL; This one probably needs to be moved above around line 238?
https://gerrit.osmocom.org/c/libosmocore/+/40494/comment/61ece964_a0154af1?u... : PS7, Line 216: goto submit_again; this goto can be implemented by simple recursive call:
if (iofd->u.uring.read_len < g_io_uring_read_sqes) iofd_uring_submit_recv(iofd, action)
And then, I actually wonder why isn't this implemented as a proper C loop?
while (iofd->u.uring.read_len < g_io_uring_read_sqes) { ... }
https://gerrit.osmocom.org/c/libosmocore/+/40494/comment/52d75e18_cd0be26a?u... : PS7, Line 231: LOGP(DLIO, LOGL_DEBUG, "Read SQE completion, but msghdr not found, please fix!\n"); sounds like LOGL_FATAL instead ;)
https://gerrit.osmocom.org/c/libosmocore/+/40494/comment/420f882f_f40b043d?u... : PS7, Line 238: missing =NULL for last read_msghdr?
https://gerrit.osmocom.org/c/libosmocore/+/40494/comment/bf164ddc_8a678e11?u... : PS7, Line 470: int idx; unsigned int
https://gerrit.osmocom.org/c/libosmocore/+/40494/comment/5d4fb40e_605814e6?u... : PS7, Line 473: msghdr = iofd->u.uring.read_msghdr[idx]; iofd->u.uring.read_msghdr[idx] = NULL;