From 9058c4d0717dd6ec9f5e780b1a664659d651856a Mon Sep 17 00:00:00 2001 From: Arlin Davis Date: Wed, 3 Sep 2014 15:47:51 -0700 Subject: [PATCH] common: return appropriate handles with affiliated EP and EVD async events Signed-off-by: Arlin Davis --- dapl/common/dapl_evd_cq_async_error_callb.c | 4 +-- dapl/common/dapl_evd_qp_async_error_callb.c | 33 +-------------------- 2 files changed, 2 insertions(+), 35 deletions(-) diff --git a/dapl/common/dapl_evd_cq_async_error_callb.c b/dapl/common/dapl_evd_cq_async_error_callb.c index 2bd2a93..2edbce0 100644 --- a/dapl/common/dapl_evd_cq_async_error_callb.c +++ b/dapl/common/dapl_evd_cq_async_error_callb.c @@ -77,9 +77,7 @@ dapl_evd_cq_async_error_callback(IN ib_hca_handle_t ib_hca_handle, dat_status = dapls_evd_post_async_error_event(async_evd, DAT_ASYNC_ERROR_EVD_OVERFLOW, - (DAT_IA_HANDLE) - async_evd->header. - owner_ia); + (DAT_HANDLE) evd); if (dat_status != DAT_SUCCESS) { dapl_os_panic("async EVD overflow\n"); diff --git a/dapl/common/dapl_evd_qp_async_error_callb.c b/dapl/common/dapl_evd_qp_async_error_callb.c index bc05d0f..6ea9edb 100644 --- a/dapl/common/dapl_evd_qp_async_error_callb.c +++ b/dapl/common/dapl_evd_qp_async_error_callb.c @@ -60,36 +60,6 @@ dapl_evd_qp_async_error_callback(IN ib_hca_handle_t ib_hca_handle, IN ib_error_record_t * cause_ptr, IN void *context) { - /* - * This is an affiliated error and hence should be able to - * supply us with exact information on the error type and QP. - * - * However the Mellanox and IBM APIs for registering this callback - * are different. - * - * The IBM API allows consumers to register the callback with - * - * ib_int32_t - * ib_set_qp_async_error_eh_us ( - * ib_hca_handle_t hca_handle, - * ib_qp_async_handler_t handler ) - * - * Notice that this function does not take a context. The context is - * specified per QP in the call to ib_qp_create_us(). - * - * In contrast the Mellanox API requires that the context be specified - * when the funciton is registered: - * - * VAPI_ret_t - * VAPI_set_async_event_handler ( - * IN VAPI_hca_hndl_t hca_hndl, - * IN VAPI_async_event_handler_t handler, - * IN void* private_data ) - * - * Therefore we always specify the context as the asyncronous EVD - * to be compatible with both APIs. - */ - DAPL_IA *ia_ptr; DAPL_EP *ep_ptr; DAPL_EVD *async_evd; @@ -138,8 +108,7 @@ dapl_evd_qp_async_error_callback(IN ib_hca_handle_t ib_hca_handle, */ (void)dapls_evd_post_async_error_event(async_evd, async_event, - async_evd->header. - owner_ia); + (DAT_HANDLE) ep_ptr); } dapl_dbg_log(DAPL_DBG_TYPE_CALLBACK | DAPL_DBG_TYPE_EXCEPTION, "%s() returns\n", __FUNCTION__); -- 2.41.0