Lines Matching refs:qhp
95 static void set_state(struct c4iw_qp *qhp, enum c4iw_qp_state state) in set_state() argument
98 spin_lock_irqsave(&qhp->lock, flag); in set_state()
99 qhp->attr.state = state; in set_state()
100 spin_unlock_irqrestore(&qhp->lock, flag); in set_state()
548 static int build_rdma_recv(struct c4iw_qp *qhp, union t4_recv_wr *wqe, in build_rdma_recv() argument
553 ret = build_isgl((__be64 *)qhp->wq.rq.queue, in build_rdma_recv()
554 (__be64 *)&qhp->wq.rq.queue[qhp->wq.rq.size], in build_rdma_recv()
575 struct c4iw_qp *qhp; in free_qp_work() local
578 qhp = container_of(work, struct c4iw_qp, free_work); in free_qp_work()
579 ucontext = qhp->ucontext; in free_qp_work()
580 rhp = qhp->rhp; in free_qp_work()
583 qhp, ucontext); in free_qp_work()
584 destroy_qp(&rhp->rdev, &qhp->wq, in free_qp_work()
587 kfree(qhp); in free_qp_work()
592 struct c4iw_qp *qhp; in queue_qp_free() local
594 qhp = container_of(kref, struct c4iw_qp, kref); in queue_qp_free()
595 CTR2(KTR_IW_CXGBE, "%s qhp %p", __func__, qhp); in queue_qp_free()
596 queue_work(qhp->rhp->rdev.free_workq, &qhp->free_work); in queue_qp_free()
611 static void complete_sq_drain_wr(struct c4iw_qp *qhp, const struct ib_send_wr *wr) in complete_sq_drain_wr() argument
618 schp = to_c4iw_cq(qhp->ibqp.send_cq); in complete_sq_drain_wr()
621 PDBG("%s drain sq id %u\n", __func__, qhp->wq.sq.qid); in complete_sq_drain_wr()
627 V_CQE_QPID(qhp->wq.sq.qid)); in complete_sq_drain_wr()
641 static void complete_rq_drain_wr(struct c4iw_qp *qhp, const struct ib_recv_wr *wr) in complete_rq_drain_wr() argument
648 rchp = to_c4iw_cq(qhp->ibqp.recv_cq); in complete_rq_drain_wr()
651 PDBG("%s drain rq id %u\n", __func__, qhp->wq.sq.qid); in complete_rq_drain_wr()
657 V_CQE_QPID(qhp->wq.sq.qid)); in complete_rq_drain_wr()
781 struct c4iw_qp *qhp; in c4iw_post_send() local
789 qhp = to_c4iw_qp(ibqp); in c4iw_post_send()
790 rdev = &qhp->rhp->rdev; in c4iw_post_send()
793 spin_lock_irqsave(&qhp->lock, flag); in c4iw_post_send()
794 if (t4_wq_in_error(&qhp->wq)) { in c4iw_post_send()
795 spin_unlock_irqrestore(&qhp->lock, flag); in c4iw_post_send()
796 complete_sq_drain_wr(qhp, wr); in c4iw_post_send()
799 num_wrs = t4_sq_avail(&qhp->wq); in c4iw_post_send()
801 spin_unlock_irqrestore(&qhp->lock, flag); in c4iw_post_send()
811 wqe = (union t4_wr *)((u8 *)qhp->wq.sq.queue + in c4iw_post_send()
812 qhp->wq.sq.wq_pidx * T4_EQ_ENTRY_SIZE); in c4iw_post_send()
817 if (wr->send_flags & IB_SEND_SIGNALED || qhp->sq_sig_all) in c4iw_post_send()
819 swsqe = &qhp->wq.sq.sw_sq[qhp->wq.sq.pidx]; in c4iw_post_send()
830 err = build_rdma_send(&qhp->wq.sq, wqe, wr, &len16); in c4iw_post_send()
835 err = build_rdma_write(&qhp->wq.sq, wqe, wr, &len16); in c4iw_post_send()
842 c4iw_invalidate_mr(qhp->rhp, in c4iw_post_send()
852 if (!qhp->wq.sq.oldest_read) in c4iw_post_send()
853 qhp->wq.sq.oldest_read = swsqe; in c4iw_post_send()
866 err = build_memreg(&qhp->wq.sq, wqe, reg_wr(wr), in c4iw_post_send()
881 c4iw_invalidate_mr(qhp->rhp, wr->ex.invalidate_rkey); in c4iw_post_send()
892 swsqe->idx = qhp->wq.sq.pidx; in c4iw_post_send()
895 qhp->sq_sig_all; in c4iw_post_send()
899 init_wr_hdr(wqe, qhp->wq.sq.pidx, fw_opcode, fw_flags, len16); in c4iw_post_send()
903 __func__, (unsigned long long)wr->wr_id, qhp->wq.sq.pidx, in c4iw_post_send()
907 t4_sq_produce(&qhp->wq, len16); in c4iw_post_send()
911 t4_ring_sq_db(&qhp->wq, idx, wqe, rdev->adap->iwt.wc_en); in c4iw_post_send()
912 spin_unlock_irqrestore(&qhp->lock, flag); in c4iw_post_send()
920 struct c4iw_qp *qhp; in c4iw_post_receive() local
927 qhp = to_c4iw_qp(ibqp); in c4iw_post_receive()
928 if (__predict_false(c4iw_stopped(&qhp->rhp->rdev))) in c4iw_post_receive()
930 spin_lock_irqsave(&qhp->lock, flag); in c4iw_post_receive()
931 if (t4_wq_in_error(&qhp->wq)) { in c4iw_post_receive()
932 spin_unlock_irqrestore(&qhp->lock, flag); in c4iw_post_receive()
933 complete_rq_drain_wr(qhp, wr); in c4iw_post_receive()
936 num_wrs = t4_rq_avail(&qhp->wq); in c4iw_post_receive()
938 spin_unlock_irqrestore(&qhp->lock, flag); in c4iw_post_receive()
948 wqe = (union t4_recv_wr *)((u8 *)qhp->wq.rq.queue + in c4iw_post_receive()
949 qhp->wq.rq.wq_pidx * in c4iw_post_receive()
952 err = build_rdma_recv(qhp, wqe, wr, &len16); in c4iw_post_receive()
960 qhp->wq.rq.sw_rq[qhp->wq.rq.pidx].wr_id = wr->wr_id; in c4iw_post_receive()
964 wqe->recv.wrid = qhp->wq.rq.pidx; in c4iw_post_receive()
970 (unsigned long long) wr->wr_id, qhp->wq.rq.pidx); in c4iw_post_receive()
971 t4_rq_produce(&qhp->wq, len16); in c4iw_post_receive()
977 t4_ring_rq_db(&qhp->wq, idx, wqe, qhp->rhp->rdev.adap->iwt.wc_en); in c4iw_post_receive()
978 spin_unlock_irqrestore(&qhp->lock, flag); in c4iw_post_receive()
1118 static void post_terminate(struct c4iw_qp *qhp, struct t4_cqe *err_cqe, in post_terminate() argument
1125 struct socket *so = qhp->ep->com.so; in post_terminate()
1130 CTR4(KTR_IW_CXGBE, "%s qhp %p qid 0x%x tid %u", __func__, qhp, in post_terminate()
1131 qhp->wq.sq.qid, qhp->ep->hwtid); in post_terminate()
1141 V_FW_WR_FLOWID(qhp->ep->hwtid) | in post_terminate()
1147 if (qhp->attr.layer_etype == (LAYER_MPA|DDP_LLP)) { in post_terminate()
1148 term->layer_etype = qhp->attr.layer_etype; in post_terminate()
1149 term->ecode = qhp->attr.ecode; in post_terminate()
1157 t4_wrq_tx(qhp->rhp->rdev.adap, wr); in post_terminate()
1161 static void __flush_qp(struct c4iw_qp *qhp, struct c4iw_cq *rchp, in __flush_qp() argument
1168 CTR4(KTR_IW_CXGBE, "%s qhp %p rchp %p schp %p", __func__, qhp, rchp, in __flush_qp()
1173 spin_lock(&qhp->lock); in __flush_qp()
1175 if (qhp->wq.flushed) { in __flush_qp()
1176 spin_unlock(&qhp->lock); in __flush_qp()
1180 qhp->wq.flushed = 1; in __flush_qp()
1183 c4iw_count_rcqes(&rchp->cq, &qhp->wq, &count); in __flush_qp()
1184 rq_flushed = c4iw_flush_rq(&qhp->wq, &rchp->cq, count); in __flush_qp()
1185 spin_unlock(&qhp->lock); in __flush_qp()
1190 spin_lock(&qhp->lock); in __flush_qp()
1193 sq_flushed = c4iw_flush_sq(qhp); in __flush_qp()
1194 spin_unlock(&qhp->lock); in __flush_qp()
1221 static void flush_qp(struct c4iw_qp *qhp) in flush_qp() argument
1226 rchp = to_c4iw_cq(qhp->ibqp.recv_cq); in flush_qp()
1227 schp = to_c4iw_cq(qhp->ibqp.send_cq); in flush_qp()
1229 t4_set_wq_in_error(&qhp->wq); in flush_qp()
1230 if (qhp->ibqp.uobject) { in flush_qp()
1244 __flush_qp(qhp, rchp, schp); in flush_qp()
1248 rdma_fini(struct c4iw_dev *rhp, struct c4iw_qp *qhp, struct c4iw_ep *ep) in rdma_fini() argument
1260 KASSERT(rhp == qhp->rhp && ep == qhp->ep, ("%s: EDOOFUS", __func__)); in rdma_fini()
1262 CTR5(KTR_IW_CXGBE, "%s qhp %p qid 0x%x ep %p tid %u", __func__, qhp, in rdma_fini()
1263 qhp->wq.sq.qid, ep, ep->hwtid); in rdma_fini()
1288 qhp->wq.sq.qid, ep->com.so, __func__); in rdma_fini()
1343 static int rdma_init(struct c4iw_dev *rhp, struct c4iw_qp *qhp) in rdma_init() argument
1348 struct c4iw_ep *ep = qhp->ep; in rdma_init()
1349 struct c4iw_rdev *rdev = &qhp->rhp->rdev; in rdma_init()
1356 CTR5(KTR_IW_CXGBE, "%s qhp %p qid 0x%x ep %p tid %u", __func__, qhp, in rdma_init()
1357 qhp->wq.sq.qid, ep, ep->hwtid); in rdma_init()
1363 ret = alloc_ird(rhp, qhp->attr.max_ird); in rdma_init()
1365 qhp->attr.max_ird = 0; in rdma_init()
1382 V_FW_RI_WR_MPAREQBIT(qhp->attr.mpa_attr.initiator) | in rdma_init()
1383 V_FW_RI_WR_P2PTYPE(qhp->attr.mpa_attr.p2p_type); in rdma_init()
1385 if (qhp->attr.mpa_attr.recv_marker_enabled) in rdma_init()
1387 if (qhp->attr.mpa_attr.xmit_marker_enabled) in rdma_init()
1389 if (qhp->attr.mpa_attr.crc_enabled) in rdma_init()
1395 if (!qhp->ibqp.uobject) in rdma_init()
1398 wqe->u.init.nrqe = cpu_to_be16(t4_rqes_posted(&qhp->wq)); in rdma_init()
1399 wqe->u.init.pdid = cpu_to_be32(qhp->attr.pd); in rdma_init()
1400 wqe->u.init.qpid = cpu_to_be32(qhp->wq.sq.qid); in rdma_init()
1401 wqe->u.init.sq_eqid = cpu_to_be32(qhp->wq.sq.qid); in rdma_init()
1402 wqe->u.init.rq_eqid = cpu_to_be32(qhp->wq.rq.qid); in rdma_init()
1403 wqe->u.init.scqid = cpu_to_be32(qhp->attr.scq); in rdma_init()
1404 wqe->u.init.rcqid = cpu_to_be32(qhp->attr.rcq); in rdma_init()
1405 wqe->u.init.ord_max = cpu_to_be32(qhp->attr.max_ord); in rdma_init()
1406 wqe->u.init.ird_max = cpu_to_be32(qhp->attr.max_ird); in rdma_init()
1409 wqe->u.init.hwrqsize = cpu_to_be32(qhp->wq.rq.rqt_size); in rdma_init()
1410 wqe->u.init.hwrqaddr = cpu_to_be32(qhp->wq.rq.rqt_hwaddr - in rdma_init()
1412 if (qhp->attr.mpa_attr.initiator) in rdma_init()
1413 build_rtr_msg(qhp->attr.mpa_attr.p2p_type, &wqe->u.init); in rdma_init()
1420 free_ird(rhp, qhp->attr.max_ird); in rdma_init()
1426 qhp->wq.sq.qid, ep->com.so, __func__); in rdma_init()
1429 free_ird(rhp, qhp->attr.max_ird); in rdma_init()
1434 int c4iw_modify_qp(struct c4iw_dev *rhp, struct c4iw_qp *qhp, in c4iw_modify_qp() argument
1440 struct c4iw_qp_attributes newattr = qhp->attr; in c4iw_modify_qp()
1447 CTR5(KTR_IW_CXGBE, "%s qhp %p sqid 0x%x rqid 0x%x ep %p", __func__, qhp, in c4iw_modify_qp()
1448 qhp->wq.sq.qid, qhp->wq.rq.qid, qhp->ep); in c4iw_modify_qp()
1449 CTR3(KTR_IW_CXGBE, "%s state %d -> %d", __func__, qhp->attr.state, in c4iw_modify_qp()
1452 mutex_lock(&qhp->mutex); in c4iw_modify_qp()
1456 if (qhp->attr.state != C4IW_QP_STATE_IDLE) { in c4iw_modify_qp()
1480 qhp->attr = newattr; in c4iw_modify_qp()
1485 if (qhp->attr.state == attrs->next_state) in c4iw_modify_qp()
1498 if ((qhp->attr.state >= C4IW_QP_STATE_ERROR) && in c4iw_modify_qp()
1504 switch (qhp->attr.state) { in c4iw_modify_qp()
1516 qhp->attr.mpa_attr = attrs->mpa_attr; in c4iw_modify_qp()
1517 qhp->attr.llp_stream_handle = attrs->llp_stream_handle; in c4iw_modify_qp()
1518 qhp->ep = qhp->attr.llp_stream_handle; in c4iw_modify_qp()
1519 set_state(qhp, C4IW_QP_STATE_RTS); in c4iw_modify_qp()
1527 c4iw_get_ep(&qhp->ep->com); in c4iw_modify_qp()
1528 ret = rdma_init(rhp, qhp); in c4iw_modify_qp()
1533 set_state(qhp, C4IW_QP_STATE_ERROR); in c4iw_modify_qp()
1534 flush_qp(qhp); in c4iw_modify_qp()
1544 BUG_ON(kref_read(&qhp->ep->com.kref) < 2); in c4iw_modify_qp()
1545 t4_set_wq_in_error(&qhp->wq); in c4iw_modify_qp()
1546 set_state(qhp, C4IW_QP_STATE_CLOSING); in c4iw_modify_qp()
1547 ep = qhp->ep; in c4iw_modify_qp()
1551 c4iw_get_ep(&qhp->ep->com); in c4iw_modify_qp()
1553 ret = rdma_fini(rhp, qhp, ep); in c4iw_modify_qp()
1558 t4_set_wq_in_error(&qhp->wq); in c4iw_modify_qp()
1559 set_state(qhp, C4IW_QP_STATE_TERMINATE); in c4iw_modify_qp()
1560 qhp->attr.layer_etype = attrs->layer_etype; in c4iw_modify_qp()
1561 qhp->attr.ecode = attrs->ecode; in c4iw_modify_qp()
1562 ep = qhp->ep; in c4iw_modify_qp()
1564 c4iw_get_ep(&qhp->ep->com); in c4iw_modify_qp()
1568 terminate = qhp->attr.send_term; in c4iw_modify_qp()
1569 ret = rdma_fini(rhp, qhp, ep); in c4iw_modify_qp()
1575 t4_set_wq_in_error(&qhp->wq); in c4iw_modify_qp()
1576 set_state(qhp, C4IW_QP_STATE_ERROR); in c4iw_modify_qp()
1580 ep = qhp->ep; in c4iw_modify_qp()
1581 c4iw_get_ep(&qhp->ep->com); in c4iw_modify_qp()
1595 if (!internal && (qhp->ibqp.uobject || attrs->next_state != in c4iw_modify_qp()
1602 flush_qp(qhp); in c4iw_modify_qp()
1603 set_state(qhp, C4IW_QP_STATE_IDLE); in c4iw_modify_qp()
1604 qhp->attr.llp_stream_handle = NULL; in c4iw_modify_qp()
1605 c4iw_put_ep(&qhp->ep->com); in c4iw_modify_qp()
1606 qhp->ep = NULL; in c4iw_modify_qp()
1607 wake_up(&qhp->wait); in c4iw_modify_qp()
1621 if (!t4_sq_empty(&qhp->wq) || !t4_rq_empty(&qhp->wq)) { in c4iw_modify_qp()
1625 set_state(qhp, C4IW_QP_STATE_IDLE); in c4iw_modify_qp()
1636 __func__, qhp->attr.state); in c4iw_modify_qp()
1644 qhp->ep, qhp->wq.sq.qid); in c4iw_modify_qp()
1647 qhp->attr.llp_stream_handle = NULL; in c4iw_modify_qp()
1649 ep = qhp->ep; in c4iw_modify_qp()
1650 qhp->ep = NULL; in c4iw_modify_qp()
1651 set_state(qhp, C4IW_QP_STATE_ERROR); in c4iw_modify_qp()
1655 flush_qp(qhp); in c4iw_modify_qp()
1656 wake_up(&qhp->wait); in c4iw_modify_qp()
1658 mutex_unlock(&qhp->mutex); in c4iw_modify_qp()
1661 post_terminate(qhp, NULL, internal ? GFP_ATOMIC : GFP_KERNEL); in c4iw_modify_qp()
1680 CTR2(KTR_IW_CXGBE, "%s exit state %d", __func__, qhp->attr.state); in c4iw_modify_qp()
1687 struct c4iw_qp *qhp; in c4iw_destroy_qp() local
1691 qhp = to_c4iw_qp(ib_qp); in c4iw_destroy_qp()
1692 rhp = qhp->rhp; in c4iw_destroy_qp()
1695 if (qhp->attr.state == C4IW_QP_STATE_TERMINATE) in c4iw_destroy_qp()
1696 c4iw_modify_qp(rhp, qhp, C4IW_QP_ATTR_NEXT_STATE, &attrs, 1); in c4iw_destroy_qp()
1698 c4iw_modify_qp(rhp, qhp, C4IW_QP_ATTR_NEXT_STATE, &attrs, 0); in c4iw_destroy_qp()
1699 wait_event(qhp->wait, !qhp->ep); in c4iw_destroy_qp()
1701 remove_handle(rhp, &rhp->qpidr, qhp->wq.sq.qid); in c4iw_destroy_qp()
1703 free_ird(rhp, qhp->attr.max_ird); in c4iw_destroy_qp()
1707 qhp->wq.sq.qid); in c4iw_destroy_qp()
1716 struct c4iw_qp *qhp; in c4iw_create_qp() local
1756 qhp = kzalloc(sizeof(*qhp), GFP_KERNEL); in c4iw_create_qp()
1757 if (!qhp) in c4iw_create_qp()
1759 qhp->wq.sq.size = sqsize; in c4iw_create_qp()
1760 qhp->wq.sq.memsize = in c4iw_create_qp()
1762 sizeof(*qhp->wq.sq.queue) + 16 * sizeof(__be64); in c4iw_create_qp()
1763 qhp->wq.sq.flush_cidx = -1; in c4iw_create_qp()
1764 qhp->wq.rq.size = rqsize; in c4iw_create_qp()
1765 qhp->wq.rq.memsize = in c4iw_create_qp()
1767 sizeof(*qhp->wq.rq.queue); in c4iw_create_qp()
1770 qhp->wq.sq.memsize = roundup(qhp->wq.sq.memsize, PAGE_SIZE); in c4iw_create_qp()
1771 qhp->wq.rq.memsize = roundup(qhp->wq.rq.memsize, PAGE_SIZE); in c4iw_create_qp()
1775 __func__, sqsize, qhp->wq.sq.memsize, rqsize, qhp->wq.rq.memsize); in c4iw_create_qp()
1777 ret = create_qp(&rhp->rdev, &qhp->wq, &schp->cq, &rchp->cq, in c4iw_create_qp()
1786 qhp->rhp = rhp; in c4iw_create_qp()
1787 qhp->attr.pd = php->pdid; in c4iw_create_qp()
1788 qhp->attr.scq = ((struct c4iw_cq *) attrs->send_cq)->cq.cqid; in c4iw_create_qp()
1789 qhp->attr.rcq = ((struct c4iw_cq *) attrs->recv_cq)->cq.cqid; in c4iw_create_qp()
1790 qhp->attr.sq_num_entries = attrs->cap.max_send_wr; in c4iw_create_qp()
1791 qhp->attr.rq_num_entries = attrs->cap.max_recv_wr; in c4iw_create_qp()
1792 qhp->attr.sq_max_sges = attrs->cap.max_send_sge; in c4iw_create_qp()
1793 qhp->attr.sq_max_sges_rdma_write = attrs->cap.max_send_sge; in c4iw_create_qp()
1794 qhp->attr.rq_max_sges = attrs->cap.max_recv_sge; in c4iw_create_qp()
1795 qhp->attr.state = C4IW_QP_STATE_IDLE; in c4iw_create_qp()
1796 qhp->attr.next_state = C4IW_QP_STATE_IDLE; in c4iw_create_qp()
1797 qhp->attr.enable_rdma_read = 1; in c4iw_create_qp()
1798 qhp->attr.enable_rdma_write = 1; in c4iw_create_qp()
1799 qhp->attr.enable_bind = 1; in c4iw_create_qp()
1800 qhp->attr.max_ord = 0; in c4iw_create_qp()
1801 qhp->attr.max_ird = 0; in c4iw_create_qp()
1802 qhp->sq_sig_all = attrs->sq_sig_type == IB_SIGNAL_ALL_WR; in c4iw_create_qp()
1803 spin_lock_init(&qhp->lock); in c4iw_create_qp()
1804 mutex_init(&qhp->mutex); in c4iw_create_qp()
1805 init_waitqueue_head(&qhp->wait); in c4iw_create_qp()
1806 kref_init(&qhp->kref); in c4iw_create_qp()
1807 INIT_WORK(&qhp->free_work, free_qp_work); in c4iw_create_qp()
1809 ret = insert_handle(rhp, &rhp->qpidr, qhp, qhp->wq.sq.qid); in c4iw_create_qp()
1836 uresp.sqid = qhp->wq.sq.qid; in c4iw_create_qp()
1837 uresp.sq_size = qhp->wq.sq.size; in c4iw_create_qp()
1838 uresp.sq_memsize = qhp->wq.sq.memsize; in c4iw_create_qp()
1839 uresp.rqid = qhp->wq.rq.qid; in c4iw_create_qp()
1840 uresp.rq_size = qhp->wq.rq.size; in c4iw_create_qp()
1841 uresp.rq_memsize = qhp->wq.rq.memsize; in c4iw_create_qp()
1857 sq_key_mm->addr = qhp->wq.sq.phys_addr; in c4iw_create_qp()
1858 sq_key_mm->len = PAGE_ALIGN(qhp->wq.sq.memsize); in c4iw_create_qp()
1864 rq_key_mm->addr = qhp->wq.rq.phys_addr; in c4iw_create_qp()
1865 rq_key_mm->len = PAGE_ALIGN(qhp->wq.rq.memsize); in c4iw_create_qp()
1871 sq_db_key_mm->addr = (u64)qhp->wq.sq.bar2_pa; in c4iw_create_qp()
1878 rq_db_key_mm->addr = (u64)qhp->wq.rq.bar2_pa; in c4iw_create_qp()
1885 qhp->ucontext = ucontext; in c4iw_create_qp()
1887 qhp->ibqp.qp_num = qhp->wq.sq.qid; in c4iw_create_qp()
1888 init_timer(&(qhp->timer)); in c4iw_create_qp()
1891 __func__, qhp->wq.sq.qid, in c4iw_create_qp()
1892 qhp->wq.sq.size, qhp->wq.sq.memsize, attrs->cap.max_send_wr); in c4iw_create_qp()
1894 __func__, qhp->wq.rq.qid, in c4iw_create_qp()
1895 qhp->wq.rq.size, qhp->wq.rq.memsize, attrs->cap.max_recv_wr); in c4iw_create_qp()
1896 return &qhp->ibqp; in c4iw_create_qp()
1906 remove_handle(rhp, &rhp->qpidr, qhp->wq.sq.qid); in c4iw_create_qp()
1908 destroy_qp(&rhp->rdev, &qhp->wq, in c4iw_create_qp()
1911 kfree(qhp); in c4iw_create_qp()
1919 struct c4iw_qp *qhp; in c4iw_ib_modify_qp() local
1934 qhp = to_c4iw_qp(ibqp); in c4iw_ib_modify_qp()
1935 rhp = qhp->rhp; in c4iw_ib_modify_qp()
1951 return c4iw_modify_qp(rhp, qhp, mask, &attrs, 0); in c4iw_ib_modify_qp()
1963 struct c4iw_qp *qhp = to_c4iw_qp(ibqp); in c4iw_ib_query_qp() local
1967 attr->qp_state = to_ib_qp_state(qhp->attr.state); in c4iw_ib_query_qp()
1968 init_attr->cap.max_send_wr = qhp->attr.sq_num_entries; in c4iw_ib_query_qp()
1969 init_attr->cap.max_recv_wr = qhp->attr.rq_num_entries; in c4iw_ib_query_qp()
1970 init_attr->cap.max_send_sge = qhp->attr.sq_max_sges; in c4iw_ib_query_qp()
1971 init_attr->cap.max_recv_sge = qhp->attr.sq_max_sges; in c4iw_ib_query_qp()
1973 init_attr->sq_sig_type = qhp->sq_sig_all ? IB_SIGNAL_ALL_WR : 0; in c4iw_ib_query_qp()