Lines Matching refs:iser_conn

56  * @iser_conn: iser connection
65 is_iser_tx_desc(struct iser_conn *iser_conn, void *wr_id)
67 void *start = iser_conn->rx_descs;
68 u64 len = iser_conn->num_rx_descs * sizeof(*iser_conn->rx_descs);
75 return ((uintptr_t)wr_id != (uintptr_t)iser_conn->login_resp_buf);
95 struct iser_conn *iser_conn = container_of(ib_conn, struct iser_conn,
98 if (is_iser_tx_desc(iser_conn, wr_id)) {
99 ISER_DBG("conn %p got send comp error", iser_conn);
101 ISER_DBG("conn %p got recv comp error", iser_conn);
105 iser_conn->icl_conn.ic_error(&iser_conn->icl_conn);
136 struct iser_conn *iser_conn = container_of(ib_conn, struct iser_conn,
140 iser_conn, (unsigned long long)wc->wr_id,
144 iser_conn, (unsigned long long)wc->wr_id);
150 ISER_DBG("conn %p got ISER_BEACON_WRID", iser_conn);
451 struct iser_conn *iser_conn;
458 iser_conn = container_of(ib_conn, struct iser_conn, ib_conn);
487 iser_conn->max_cmds =
491 iser_conn->max_cmds =
574 static int iser_conn_state_comp_exch(struct iser_conn *iser_conn,
580 ret = (iser_conn->state == comp);
582 iser_conn->state = exch;
589 * @iser_conn: iser connection struct
599 iser_free_ib_conn_res(struct iser_conn *iser_conn,
602 struct ib_conn *ib_conn = &iser_conn->ib_conn;
606 iser_conn, ib_conn->cma_id, ib_conn->qp);
617 if (iser_conn->login_buf)
618 iser_free_login_buf(iser_conn);
620 if (iser_conn->rx_descs)
621 iser_free_rx_descriptors(iser_conn);
635 iser_conn_terminate(struct iser_conn *iser_conn)
637 struct ib_conn *ib_conn = &iser_conn->ib_conn;
643 if (!iser_conn_state_comp_exch(iser_conn, ISER_CONN_UP,
647 ISER_INFO("iser_conn %p state %d\n", iser_conn, iser_conn->state);
673 iser_conn, err);
687 ISER_DBG("before send cv_wait: %p", iser_conn);
689 ISER_DBG("after send cv_wait: %p", iser_conn);
701 ISER_DBG("before recv cv_wait: %p", iser_conn);
704 ISER_DBG("after recv cv_wait: %p", iser_conn);
717 struct iser_conn *iser_conn;
719 iser_conn = cma_id->context;
721 ISER_ERR("conn %p", iser_conn);
723 iser_conn->state = ISER_CONN_TERMINATING;
725 cv_signal(&iser_conn->up_cv);
735 struct iser_conn *iser_conn;
739 iser_conn = cma_id->context;
741 ib_conn = &iser_conn->ib_conn;
745 iser_conn);
754 ISER_ERR("conn %p resolve route failed: %d", iser_conn, ret);
769 struct iser_conn *iser_conn = cma_id->context;
770 struct ib_conn *ib_conn = &iser_conn->ib_conn;
795 ISER_ERR("conn %p failure connecting: %d", iser_conn, ret);
810 struct iser_conn *iser_conn;
814 iser_conn = cma_id->context;
821 iser_conn->state = ISER_CONN_UP;
823 cv_signal(&iser_conn->up_cv);
832 struct iser_conn *iser_conn = cma_id->context;
834 if (iser_conn_terminate(iser_conn))
835 iser_conn->icl_conn.ic_error(&iser_conn->icl_conn);
842 struct iser_conn *iser_conn;
845 iser_conn = cma_id->context;
849 sx_xlock(&iser_conn->state_mutex);
876 sx_xunlock(&iser_conn->state_mutex);
882 iser_post_recvl(struct iser_conn *iser_conn)
885 struct ib_conn *ib_conn = &iser_conn->ib_conn;
889 sge.addr = iser_conn->login_resp_dma;
893 rx_wr.wr_id = (uintptr_t)iser_conn->login_resp_buf;
909 iser_post_recvm(struct iser_conn *iser_conn, int count)
913 struct ib_conn *ib_conn = &iser_conn->ib_conn;
914 unsigned int my_rx_head = iser_conn->rx_desc_head;
918 rx_desc = &iser_conn->rx_descs[my_rx_head];
923 my_rx_head = (my_rx_head + 1) % iser_conn->qp_max_recv_dtos;
935 iser_conn->rx_desc_head = my_rx_head;