Lines Matching refs:recv_ioctx
1012 static int srpt_get_desc_tbl(struct srpt_recv_ioctx *recv_ioctx, in srpt_get_desc_tbl() argument
1074 if (recv_ioctx->byte_len < req_size) { in srpt_get_desc_tbl()
1076 recv_ioctx->byte_len, req_size); in srpt_get_desc_tbl()
1088 ioctx->recv_ioctx = recv_ioctx; in srpt_get_desc_tbl()
1232 WARN_ON_ONCE(ioctx->recv_ioctx); in srpt_get_send_ioctx()
1488 struct srpt_recv_ioctx *recv_ioctx, in srpt_handle_cmd() argument
1501 srp_cmd = recv_ioctx->ioctx.buf + recv_ioctx->ioctx.offset; in srpt_handle_cmd()
1521 rc = srpt_get_desc_tbl(recv_ioctx, send_ioctx, srp_cmd, &dir, in srpt_handle_cmd()
1577 struct srpt_recv_ioctx *recv_ioctx, in srpt_handle_tsk_mgmt() argument
1588 srp_tsk = recv_ioctx->ioctx.buf + recv_ioctx->ioctx.offset; in srpt_handle_tsk_mgmt()
1615 srpt_handle_new_iu(struct srpt_rdma_ch *ch, struct srpt_recv_ioctx *recv_ioctx) in srpt_handle_new_iu() argument
1623 BUG_ON(!recv_ioctx); in srpt_handle_new_iu()
1629 recv_ioctx->ioctx.dma, in srpt_handle_new_iu()
1630 recv_ioctx->ioctx.offset + srp_max_req_size, in srpt_handle_new_iu()
1633 srp_cmd = recv_ioctx->ioctx.buf + recv_ioctx->ioctx.offset; in srpt_handle_new_iu()
1641 if (!list_empty(&recv_ioctx->wait_list)) { in srpt_handle_new_iu()
1643 list_del_init(&recv_ioctx->wait_list); in srpt_handle_new_iu()
1648 srpt_handle_cmd(ch, recv_ioctx, send_ioctx); in srpt_handle_new_iu()
1651 srpt_handle_tsk_mgmt(ch, recv_ioctx, send_ioctx); in srpt_handle_new_iu()
1670 if (!send_ioctx || !send_ioctx->recv_ioctx) in srpt_handle_new_iu()
1671 srpt_post_recv(ch->sport->sdev, ch, recv_ioctx); in srpt_handle_new_iu()
1678 if (list_empty(&recv_ioctx->wait_list)) { in srpt_handle_new_iu()
1680 list_add_tail(&recv_ioctx->wait_list, &ch->cmd_wait_list); in srpt_handle_new_iu()
1712 struct srpt_recv_ioctx *recv_ioctx, *tmp; in srpt_process_wait_list() local
1721 list_for_each_entry_safe(recv_ioctx, tmp, &ch->cmd_wait_list, in srpt_process_wait_list()
1723 if (!srpt_handle_new_iu(ch, recv_ioctx)) in srpt_process_wait_list()
2741 if (ioctx->recv_ioctx) { in srpt_write_pending()
3314 struct srpt_recv_ioctx *recv_ioctx = ioctx->recv_ioctx; in srpt_release_cmd() local
3319 if (recv_ioctx) { in srpt_release_cmd()
3320 WARN_ON_ONCE(!list_empty(&recv_ioctx->wait_list)); in srpt_release_cmd()
3321 ioctx->recv_ioctx = NULL; in srpt_release_cmd()
3322 srpt_post_recv(ch->sport->sdev, ch, recv_ioctx); in srpt_release_cmd()