From a3824096c8604a75ace4dea86cce3b73fcfec758 Mon Sep 17 00:00:00 2001 From: Sean Hefty Date: Thu, 14 Oct 2010 16:57:37 -0700 Subject: [PATCH] Refresh of dapl-spawn --- trunk/ulp/dapl2/dapl/common/dapl_ep_util.c | 1 - trunk/ulp/dapl2/dapl/openib_common/qp.c | 6 ++++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/trunk/ulp/dapl2/dapl/common/dapl_ep_util.c b/trunk/ulp/dapl2/dapl/common/dapl_ep_util.c index e4bc2a3b..2efeab83 100644 --- a/trunk/ulp/dapl2/dapl/common/dapl_ep_util.c +++ b/trunk/ulp/dapl2/dapl/common/dapl_ep_util.c @@ -622,7 +622,6 @@ void dapls_ep_flush_cqs(DAPL_EP * ep_ptr) { while (dapls_cb_pending(&ep_ptr->req_buffer)) dapli_ep_flush_evd((DAPL_EVD *) ep_ptr->param.request_evd_handle); - while (dapls_cb_pending(&ep_ptr->recv_buffer)) dapli_ep_flush_evd((DAPL_EVD *) ep_ptr->param.recv_evd_handle); } diff --git a/trunk/ulp/dapl2/dapl/openib_common/qp.c b/trunk/ulp/dapl2/dapl/openib_common/qp.c index fbb874a1..7c5a572b 100644 --- a/trunk/ulp/dapl2/dapl/openib_common/qp.c +++ b/trunk/ulp/dapl2/dapl/openib_common/qp.c @@ -210,6 +210,7 @@ dapls_ib_qp_alloc(IN DAPL_IA * ia_ptr, DAT_RETURN dapls_ib_qp_free(IN DAPL_IA * ia_ptr, IN DAPL_EP * ep_ptr) { struct ibv_qp *qp; + struct ibv_qp_attr qp_attr; #ifdef _OPENIB_CMA_ dp_ib_cm_handle_t cm_ptr = dapl_get_cm_from_ep(ep_ptr); @@ -223,10 +224,11 @@ DAT_RETURN dapls_ib_qp_free(IN DAPL_IA * ia_ptr, IN DAPL_EP * ep_ptr) ep_ptr->qp_handle = NULL; dapl_os_unlock(&ep_ptr->header.lock); - /* force error state to flush queue, then destroy */ - dapls_modify_qp_state(qp, IBV_QPS_ERR, 0,0,0); + qp_attr.qp_state = IBV_QPS_ERR; + ibv_modify_qp(qp, &qp_attr, IBV_QP_STATE); dapls_ep_flush_cqs(ep_ptr); + ep_ptr->qp_handle = NULL; #ifdef _OPENIB_CMA_ rdma_destroy_qp(cm_ptr->cm_id); cm_ptr->cm_id->qp = NULL; -- 2.46.0