Commit 93d8032f authored by Jens Axboe's avatar Jens Axboe

io_uring/net: cleanup io_recv_finish() bundle handling

Combine the two cases that check for whether or not this is a bundle,
rather than having them as separate checks. This is easier to reduce,
and it reduces the text associated with it as well.
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 3b7c16be
...@@ -827,20 +827,20 @@ static inline bool io_recv_finish(struct io_kiocb *req, int *ret, ...@@ -827,20 +827,20 @@ static inline bool io_recv_finish(struct io_kiocb *req, int *ret,
bool mshot_finished, unsigned issue_flags) bool mshot_finished, unsigned issue_flags)
{ {
struct io_sr_msg *sr = io_kiocb_to_cmd(req, struct io_sr_msg); struct io_sr_msg *sr = io_kiocb_to_cmd(req, struct io_sr_msg);
unsigned int cflags; unsigned int cflags = 0;
if (sr->flags & IORING_RECVSEND_BUNDLE)
cflags = io_put_kbufs(req, io_bundle_nbufs(kmsg, *ret),
issue_flags);
else
cflags = io_put_kbuf(req, issue_flags);
if (kmsg->msg.msg_inq > 0) if (kmsg->msg.msg_inq > 0)
cflags |= IORING_CQE_F_SOCK_NONEMPTY; cflags |= IORING_CQE_F_SOCK_NONEMPTY;
/* bundle with no more immediate buffers, we're done */ if (sr->flags & IORING_RECVSEND_BUNDLE) {
if (sr->flags & IORING_RECVSEND_BUNDLE && req->flags & REQ_F_BL_EMPTY) cflags |= io_put_kbufs(req, io_bundle_nbufs(kmsg, *ret),
goto finish; issue_flags);
/* bundle with no more immediate buffers, we're done */
if (req->flags & REQ_F_BL_EMPTY)
goto finish;
} else {
cflags |= io_put_kbuf(req, issue_flags);
}
/* /*
* Fill CQE for this receive and see if we should keep trying to * Fill CQE for this receive and see if we should keep trying to
......
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