]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
io_uring/net: don't use io_net_kbuf_recyle() for non-provided cases
authorJens Axboe <axboe@kernel.dk>
Thu, 21 Aug 2025 02:03:31 +0000 (20:03 -0600)
committerJens Axboe <axboe@kernel.dk>
Sun, 24 Aug 2025 17:41:11 +0000 (11:41 -0600)
A previous commit used io_net_kbuf_recyle() for any network helper that
did IO and needed partial retry. However, that's only needed if the
opcode does buffer selection, which isnt support for sendzc, sendmsg_zc,
or sendmsg. Just remove them - they don't do any harm, but it is a bit
confusing when reading the code.

Link: https://lore.kernel.org/r/20250821020750.598432-4-axboe@kernel.dk
Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/net.c

index 3da253b80332bfece0f1672ba54f220863843156..a8a6586bc416c423e7d85a6fc04a62fe436f2554 100644 (file)
@@ -570,7 +570,7 @@ int io_sendmsg(struct io_kiocb *req, unsigned int issue_flags)
                        kmsg->msg.msg_controllen = 0;
                        kmsg->msg.msg_control = NULL;
                        sr->done_io += ret;
-                       return io_net_kbuf_recyle(req, kmsg, ret);
+                       return -EAGAIN;
                }
                if (ret == -ERESTARTSYS)
                        ret = -EINTR;
@@ -1503,7 +1503,7 @@ int io_send_zc(struct io_kiocb *req, unsigned int issue_flags)
                        zc->len -= ret;
                        zc->buf += ret;
                        zc->done_io += ret;
-                       return io_net_kbuf_recyle(req, kmsg, ret);
+                       return -EAGAIN;
                }
                if (ret == -ERESTARTSYS)
                        ret = -EINTR;
@@ -1573,7 +1573,7 @@ int io_sendmsg_zc(struct io_kiocb *req, unsigned int issue_flags)
 
                if (ret > 0 && io_net_retry(sock, flags)) {
                        sr->done_io += ret;
-                       return io_net_kbuf_recyle(req, kmsg, ret);
+                       return -EAGAIN;
                }
                if (ret == -ERESTARTSYS)
                        ret = -EINTR;