Lines Matching defs:ibqp
559 int mlx4_query_qp(struct ibv_qp *ibqp, struct ibv_qp_attr *attr,
564 struct mlx4_qp *qp = to_mqp(ibqp);
567 ret = ibv_cmd_query_qp(ibqp, attr, attr_mask, init_attr, &cmd, sizeof cmd);
642 int mlx4_destroy_qp(struct ibv_qp *ibqp)
644 struct mlx4_qp *qp = to_mqp(ibqp);
647 pthread_mutex_lock(&to_mctx(ibqp->context)->qp_table_mutex);
648 ret = ibv_cmd_destroy_qp(ibqp);
650 pthread_mutex_unlock(&to_mctx(ibqp->context)->qp_table_mutex);
654 mlx4_lock_cqs(ibqp);
656 __mlx4_cq_clean(to_mcq(ibqp->recv_cq), ibqp->qp_num,
657 ibqp->srq ? to_msrq(ibqp->srq) : NULL);
658 if (ibqp->send_cq != ibqp->recv_cq)
659 __mlx4_cq_clean(to_mcq(ibqp->send_cq), ibqp->qp_num, NULL);
661 mlx4_clear_qp(to_mctx(ibqp->context), ibqp->qp_num);
663 mlx4_unlock_cqs(ibqp);
664 pthread_mutex_unlock(&to_mctx(ibqp->context)->qp_table_mutex);
666 if (!ibqp->srq && ibqp->qp_type != IBV_QPT_XRC)
667 mlx4_free_db(to_mctx(ibqp->context), MLX4_DB_TYPE_RQ, qp->db);