Hi Linus, Fixes that should go into the 6.8 kernel release, and targeted for stable as well. There are three parts here: - Fix for missing retry for read multishot. If we trigger the execution of it and there's more than one buffer to be read, then we don't always read more than the first one. As it's edge triggered, this can lead to stalls. - Limit inline receive multishot retries for fairness reasons. If we have a very bursty socket receiving data, we still need to ensure we process other requests as well. This is really two minor cleanups, then adding a way for poll reissue to trigger a requeue, and then finally having multishot receive utilize that. - Fix for a weird corner case for non-multishot receive with MSG_WAITALL, using provided buffers, and setting the length to zero (to let the buffer dictate the receive size). Please pull! The following changes since commit 16bae3e1377846734ec6b87eee459c0f3551692c: io_uring: enable audit and restrict cred override for IORING_OP_FIXED_FD_INSTALL (2024-01-23 15:25:14 -0700) are available in the Git repository at: git://git.kernel.dk/linux.git tags/io_uring-6.8-2024-02-01 for you to fetch changes up to 72bd80252feeb3bef8724230ee15d9f7ab541c6e: io_uring/net: fix sr->len for IORING_OP_RECV with MSG_WAITALL and buffers (2024-02-01 06:42:36 -0700) ---------------------------------------------------------------- io_uring-6.8-2024-02-01 ---------------------------------------------------------------- Jens Axboe (6): io_uring/rw: ensure poll based multishot read retries appropriately io_uring/poll: move poll execution helpers higher up io_uring/net: un-indent mshot retry path in io_recv_finish() io_uring/poll: add requeue return code from poll multishot handling io_uring/net: limit inline multishot retries io_uring/net: fix sr->len for IORING_OP_RECV with MSG_WAITALL and buffers io_uring/io_uring.h | 8 +++++++- io_uring/net.c | 50 ++++++++++++++++++++++++++++++++++++-------------- io_uring/poll.c | 49 ++++++++++++++++++++++++++++--------------------- io_uring/poll.h | 9 +++++++++ io_uring/rw.c | 10 +++++++++- 5 files changed, 89 insertions(+), 37 deletions(-) -- Jens Axboe