]> git.openfabrics.org - ~shefty/rdma-win.git/commitdiff
Refresh of dapl-spawn
authorSean Hefty <sean.hefty@intel.com>
Thu, 14 Oct 2010 23:57:37 +0000 (16:57 -0700)
committerSean Hefty <sean.hefty@intel.com>
Thu, 14 Oct 2010 23:57:37 +0000 (16:57 -0700)
trunk/ulp/dapl2/dapl/common/dapl_ep_util.c
trunk/ulp/dapl2/dapl/openib_common/qp.c

index e4bc2a3ba4bb55f826261147bb2eccec059426c9..2efeab83203dd6e3d4fb586afd8d9918bf3fc038 100644 (file)
@@ -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);
 }
index fbb874a156f6493b8f8ede0e8a983f946613a124..7c5a572bb9b0d36af3a7918e126595816d9e6009 100644 (file)
@@ -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;