Lines Matching refs:send_cq
890 static void mlx4_ib_lock_cqs(struct mlx4_ib_cq *send_cq, struct mlx4_ib_cq *recv_cq) in mlx4_ib_lock_cqs() argument
891 __acquires(&send_cq->lock) __acquires(&recv_cq->lock) in mlx4_ib_lock_cqs()
893 if (send_cq == recv_cq) { in mlx4_ib_lock_cqs()
894 spin_lock_irq(&send_cq->lock); in mlx4_ib_lock_cqs()
896 } else if (send_cq->mcq.cqn < recv_cq->mcq.cqn) { in mlx4_ib_lock_cqs()
897 spin_lock_irq(&send_cq->lock); in mlx4_ib_lock_cqs()
901 spin_lock_nested(&send_cq->lock, SINGLE_DEPTH_NESTING); in mlx4_ib_lock_cqs()
905 static void mlx4_ib_unlock_cqs(struct mlx4_ib_cq *send_cq, struct mlx4_ib_cq *recv_cq) in mlx4_ib_unlock_cqs() argument
906 __releases(&send_cq->lock) __releases(&recv_cq->lock) in mlx4_ib_unlock_cqs()
908 if (send_cq == recv_cq) { in mlx4_ib_unlock_cqs()
910 spin_unlock_irq(&send_cq->lock); in mlx4_ib_unlock_cqs()
911 } else if (send_cq->mcq.cqn < recv_cq->mcq.cqn) { in mlx4_ib_unlock_cqs()
913 spin_unlock_irq(&send_cq->lock); in mlx4_ib_unlock_cqs()
915 spin_unlock(&send_cq->lock); in mlx4_ib_unlock_cqs()
939 struct mlx4_ib_cq **send_cq, struct mlx4_ib_cq **recv_cq) in get_cqs() argument
943 *send_cq = to_mcq(to_mxrcd(qp->ibqp.xrcd)->cq); in get_cqs()
944 *recv_cq = *send_cq; in get_cqs()
947 *send_cq = to_mcq(qp->ibqp.send_cq); in get_cqs()
948 *recv_cq = *send_cq; in get_cqs()
951 *send_cq = to_mcq(qp->ibqp.send_cq); in get_cqs()
960 struct mlx4_ib_cq *send_cq, *recv_cq; in destroy_qp_common() local
990 get_cqs(qp, &send_cq, &recv_cq); in destroy_qp_common()
992 mlx4_ib_lock_cqs(send_cq, recv_cq); in destroy_qp_common()
997 if (send_cq != recv_cq) in destroy_qp_common()
998 __mlx4_ib_cq_clean(send_cq, qp->mqp.qpn, NULL); in destroy_qp_common()
1003 mlx4_ib_unlock_cqs(send_cq, recv_cq); in destroy_qp_common()
1092 init_attr->send_cq = to_mxrcd(init_attr->xrcd)->cq; in mlx4_ib_create_qp()
1097 init_attr->recv_cq = init_attr->send_cq; in mlx4_ib_create_qp()
1422 struct mlx4_ib_cq *send_cq, *recv_cq; in __mlx4_ib_modify_qp() local
1566 get_cqs(qp, &send_cq, &recv_cq); in __mlx4_ib_modify_qp()
1568 context->cqn_send = cpu_to_be32(send_cq->mcq.cqn); in __mlx4_ib_modify_qp()
1777 if (send_cq != recv_cq) in __mlx4_ib_modify_qp()
1778 mlx4_ib_cq_clean(send_cq, qp->mqp.qpn, NULL); in __mlx4_ib_modify_qp()
2617 if (mlx4_wq_overflow(&qp->sq, nreq, qp->ibqp.send_cq)) { in mlx4_ib_post_send()