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: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
3b7c16be30
commit
93d8032f41
@ -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
|
||||||
|
Loading…
Reference in New Issue
Block a user