Commit e2ad599d authored by Dylan Yudaken's avatar Dylan Yudaken Committed by Jens Axboe

io_uring: allow multishot recv CQEs to overflow

With commit aa1df3a3 ("io_uring: fix CQE reordering"), there are
stronger guarantees for overflow ordering. Specifically ensuring that
userspace will not receive out of order receive CQEs. Therefore this is
not needed any more for recv/recvmsg.
Signed-off-by: default avatarDylan Yudaken <dylany@meta.com>
Link: https://lore.kernel.org/r/20221107125236.260132-4-dylany@meta.comSigned-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 515e2696
......@@ -602,15 +602,11 @@ static inline bool io_recv_finish(struct io_kiocb *req, int *ret,
if (!mshot_finished) {
if (io_post_aux_cqe(req->ctx, req->cqe.user_data, *ret,
cflags | IORING_CQE_F_MORE, false)) {
cflags | IORING_CQE_F_MORE, true)) {
io_recv_prep_retry(req);
return false;
}
/*
* Otherwise stop multishot but use the current result.
* Probably will end up going into overflow, but this means
* we cannot trust the ordering anymore
*/
/* Otherwise stop multishot but use the current result. */
}
io_req_set_res(req, *ret, cflags);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment