FAILED: patch "[PATCH] io_uring/msg_ring: let target know allocated index" failed to apply to 6.1-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 6.1-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.1.y
git checkout FETCH_HEAD
git cherry-pick -x 5da28edd7bd5518f97175ecea77615bb729a7a28
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '[email protected]' --subject-prefix 'PATCH 6.1.y' HEAD^..
Possible dependencies:
5da28edd7bd5 ("io_uring/msg_ring: let target know allocated index") 172113101641 ("io_uring: extract a io_msg_install_complete helper") 11373026f296 ("io_uring: get rid of double locking") b529c96a896b ("io_uring: remove overflow param from io_post_aux_cqe") a77ab745f28d ("io_uring: make io_fill_cqe_aux static") 9b8c54755a2b ("io_uring: add io_aux_cqe which allows deferred completion") 931147ddfa6e ("io_uring: allow defer completion for aux posted cqes") 1bec951c3809 ("io_uring: iopoll protect complete_post") fa18fa2272c7 ("io_uring: inline __io_req_complete_put()") f9d567c75ec2 ("io_uring: inline __io_req_complete_post()") e2ad599d1ed3 ("io_uring: allow multishot recv CQEs to overflow") 515e26961295 ("io_uring: revert "io_uring fix multishot accept ordering"")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 5da28edd7bd5518f97175ecea77615bb729a7a28 Mon Sep 17 00:00:00 2001
From: Pavel Begunkov <[email protected]>
Date: Thu, 16 Mar 2023 12:11:42 +0000
Subject: [PATCH] io_uring/msg_ring: let target know allocated index
msg_ring requests transferring files support auto index selection via IORING_FILE_INDEX_ALLOC, however they don't return the selected index to the target ring and there is no other good way for the userspace to know where is the receieved file.
Return the index for allocated slots and 0 otherwise, which is consistent with other fixed file installing requests.
io_uring/msg_ring.c +3 -1
@@ -202,7 +202,7 @@ static int io_msg_install_complete(struct io_kiocb *req, unsigned int issue_flag* completes with -EOVERFLOW, then the sender must ensure that a * later IORING_OP_MSG_RING delivers the message. */ -if (!io_post_aux_cqe (target_ctx, msg->user_data, msg->len,0 )) +if (!io_post_aux_cqe (target_ctx, msg->user_data, ret,0 )) ret = -EOVERFLOW ; out_unlock:io_double_unlock_ctx (target_ctx);
@@ -229,6 +229,8 @@ static int io_msg_send_fd(struct io_kiocb *req, unsigned int issue_flags)struct io_ring_ctx *ctx = req->ctx;struct file *src_file = msg->src_file; +if (msg->len) +return -EINVAL ;if (target_ctx == ctx)return -EINVAL ;if (target_ctx->flags &IORING_SETUP_R_DISABLED )
Jens Axboe
maintainerQuoted 6 lines · On 3/20/23 5:50 AM, [email protected] wrote:
The patch below does not apply to the 6.1-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
Quoted 8 lines
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.1.y
git checkoutFETCH_HEAD
git cherry-pick -x5da28edd7bd5518f97175ecea77615bb729a7a28
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '[email protected]' --subject-prefix 'PATCH 6.1.y' HEAD^..
Here's a tested backport of that patch.
Signature · 1 line
Jens Axboe
From 1b6b46b344561c9b5127bcc59c68a310d66f4368 Mon Sep 17 00:00:00 2001
From: Pavel Begunkov <[email protected]>
Date: Mon, 20 Mar 2023 07:05:02 -0600
Subject: [PATCH] io_uring/msg_ring: let target know allocated index
commit 5da28edd7bd5518f97175ecea77615bb729a7a28 upstream.
msg_ring requests transferring files support auto index selection via IORING_FILE_INDEX_ALLOC, however they don't return the selected index to the target ring and there is no other good way for the userspace to know where is the receieved file.
Return the index for allocated slots and 0 otherwise, which is consistent with other fixed file installing requests.
--- io_uring/msg_ring.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
io_uring/msg_ring.c +3 -1
@@ -84,6 +84,8 @@ static int io_msg_send_fd(struct io_kiocb *req, unsigned int issue_flags)struct file *src_file;int ret; +if (msg->len) +return -EINVAL ;if (target_ctx == ctx)return -EINVAL ;if (target_ctx->flags &IORING_SETUP_R_DISABLED )
@@ -120,7 +122,7 @@ static int io_msg_send_fd(struct io_kiocb *req, unsigned int issue_flags)* completes with -EOVERFLOW, then the sender must ensure that a * later IORING_OP_MSG_RING delivers the message. */ -if (!io_post_aux_cqe (target_ctx, msg->user_data, msg->len,0 , true)) +if (!io_post_aux_cqe (target_ctx, msg->user_data, ret,0 , true)) ret = -EOVERFLOW ; out_unlock:io_double_unlock_ctx (ctx, target_ctx, issue_flags);
Signature · 1 line
2.39.2
Greg KH
maintainerQuoted 9 lines · Jens Axboe
Quoted 8 lines · On 3/20/23 5:50 AM, [email protected] wrote:
The patch below does not apply to the 6.1-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.To reproduce the conflict and resubmit, you may use the following commands:
Quoted 8 lines
Quoted 6 lines
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.1.y
git checkoutFETCH_HEAD
git cherry-pick -x5da28edd7bd5518f97175ecea77615bb729a7a28
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '[email protected]' --subject-prefix 'PATCH 6.1.y' HEAD^..Here's a tested backport of that patch.
Thanks, now queued up!
greg k-h