Lines Matching refs:io

154         io_pending_proxy_t *io = STAILQ_FIRST(&head);  in _proxy_event_handler_dequeue()  local
155 io->flushed = false; in _proxy_event_handler_dequeue()
160 io->io_next.stqe_next = NULL; in _proxy_event_handler_dequeue()
162 mcp_backend_t *be = io->backend; in _proxy_event_handler_dequeue()
163 STAILQ_INSERT_TAIL(&be->io_head, io, io_next); in _proxy_event_handler_dequeue()
298 io_pending_proxy_t *io = NULL; in _proxy_flush_backend_queue() local
302 io = STAILQ_FIRST(&be->io_head); in _proxy_flush_backend_queue()
304 mcp_resp_set_elapsed(io->client_resp); in _proxy_flush_backend_queue()
305 io->client_resp->status = MCMC_ERR; in _proxy_flush_backend_queue()
306 io->client_resp->resp.code = MCMC_CODE_SERVER_ERROR; in _proxy_flush_backend_queue()
309 return_io_pending((io_pending_t *)io); in _proxy_flush_backend_queue()
877 io_pending_proxy_t *io = NULL; in _reset_bad_backend() local
883 io = STAILQ_FIRST(&be->io_head); in _reset_bad_backend()
887 mcp_resp_set_elapsed(io->client_resp); in _reset_bad_backend()
888 io->client_resp->status = MCMC_ERR; in _reset_bad_backend()
889 io->client_resp->resp.code = MCMC_CODE_SERVER_ERROR; in _reset_bad_backend()
892 return_io_pending((io_pending_t *)io); in _reset_bad_backend()
922 io_pending_proxy_t *io = NULL; in _prep_pending_write() local
926 io = STAILQ_FIRST(&be->io_head); in _prep_pending_write()
928 io = be->io_next; in _prep_pending_write()
930 assert(io != NULL); in _prep_pending_write()
931 for (; io; io = STAILQ_NEXT(io, io_next)) { in _prep_pending_write()
933 if (io->flushed) in _prep_pending_write()
936 if (io->iovcnt + iovused > BE_IOV_MAX) { in _prep_pending_write()
941 memcpy(&iovs[iovused], io->iov, sizeof(struct iovec)*io->iovcnt); in _prep_pending_write()
942 iovused += io->iovcnt; in _prep_pending_write()
949 io_pending_proxy_t *io = be->io_next; in _post_pending_write() local
950 if (io == NULL) { in _post_pending_write()
951 io = STAILQ_FIRST(&be->io_head); in _post_pending_write()
954 for (; io; io = STAILQ_NEXT(io, io_next)) { in _post_pending_write()
956 if (io->flushed) in _post_pending_write()
958 if (sent >= io->iovbytes) { in _post_pending_write()
960 sent -= io->iovbytes; in _post_pending_write()
962 io->iovbytes -= sent; in _post_pending_write()
963 for (int x = 0; x < io->iovcnt; x++) { in _post_pending_write()
964 struct iovec *iov = &io->iov[x]; in _post_pending_write()
977 io->flushed = flushed; in _post_pending_write()
990 if (io != NULL) { in _post_pending_write()
991 if (!io->flushed) { in _post_pending_write()
992 be->io_next = io; in _post_pending_write()
995 io_pending_proxy_t *nio = STAILQ_NEXT(io, io_next); in _post_pending_write()