Lines Matching defs:sel
494 struct io_br_sel *sel)
497 bool bundle_finished = sel->val <= 0;
501 cflags = io_put_kbuf(req, sel->val, sel->buf_list);
505 cflags = io_put_kbufs(req, sel->val, sel->buf_list, io_bundle_nbufs(kmsg, sel->val));
518 if (io_req_post_cqe(req, sel->val, cflags | IORING_CQE_F_MORE)) {
525 io_req_set_res(req, sel->val, cflags);
526 sel->val = IOU_COMPLETE;
580 struct io_br_sel *sel, struct io_async_msghdr *kmsg)
602 ret = io_buffers_select(req, &arg, sel, issue_flags);
631 struct io_br_sel sel = { };
659 sel.buf_list = NULL;
661 ret = io_send_select_buffer(req, issue_flags, &sel, kmsg);
685 return io_net_kbuf_recyle(req, sel.buf_list, kmsg, ret);
696 sel.val = ret;
697 if (!io_send_finish(req, kmsg, &sel))
701 return sel.val;
856 struct io_br_sel *sel, bool mshot_finished,
865 if (sel->val > 0 && sr->flags & IORING_RECV_MSHOT_LIM) {
871 sr->mshot_total_len -= min_t(int, sel->val, sr->mshot_total_len);
879 size_t this_ret = sel->val - sr->done_io;
881 cflags |= io_put_kbufs(req, consumed, sel->buf_list, io_bundle_nbufs(kmsg, consumed));
884 if (sr->mshot_len && sel->val >= sr->mshot_len)
903 cflags |= io_put_kbuf(req, consumed, sel->buf_list);
911 io_req_post_cqe(req, sel->val, cflags | IORING_CQE_F_MORE)) {
912 sel->val = IOU_RETRY;
924 sel->val = IOU_REQUEUE;
931 io_req_set_res(req, sel->val, cflags);
932 sel->val = IOU_COMPLETE;
1025 struct io_br_sel sel = { };
1047 sel.buf_list = NULL;
1050 sel = io_buffer_select(req, &len, sr->buf_group, issue_flags);
1051 if (!sel.addr)
1055 ret = io_recvmsg_prep_multishot(kmsg, sr, &sel.addr, &len);
1057 io_kbuf_recycle(req, sel.buf_list, issue_flags);
1062 iov_iter_ubuf(&kmsg->msg.msg_iter, ITER_DEST, sel.addr, len);
1091 io_kbuf_recycle(req, sel.buf_list, issue_flags);
1096 return io_net_kbuf_recyle(req, sel.buf_list, kmsg, ret);
1110 io_kbuf_recycle(req, sel.buf_list, issue_flags);
1112 sel.val = ret;
1113 if (!io_recv_finish(req, kmsg, &sel, mshot_finished, issue_flags, consumed))
1116 return sel.val;
1120 struct io_br_sel *sel, unsigned int issue_flags)
1146 if (sel->val)
1147 arg.max_len = sel->val;
1149 arg.max_len = min_not_zero(sel->val, (ssize_t) kmsg->msg.msg_inq);
1154 ret = io_buffers_peek(req, &arg, sel);
1176 len = sel->val;
1178 *sel = io_buffer_select(req, &len, sr->buf_group, issue_flags);
1179 if (!sel->addr)
1181 sr->buf = sel->addr;
1197 struct io_br_sel sel;
1223 sel.buf_list = NULL;
1230 sel.buf_list = NULL;
1233 sel.val = sr->len;
1234 ret = io_recv_buf_select(req, kmsg, &sel, issue_flags);
1252 io_kbuf_recycle(req, sel.buf_list, issue_flags);
1259 return io_net_kbuf_recyle(req, sel.buf_list, kmsg, ret);
1286 io_kbuf_recycle(req, sel.buf_list, issue_flags);
1288 sel.val = ret;
1289 if (!io_recv_finish(req, kmsg, &sel, mshot_finished, issue_flags, consumed))
1292 return sel.val;