From e5b8df366e082078e238eb7e19851546377e8f8f Mon Sep 17 00:00:00 2001 From: ftillier Date: Tue, 31 May 2005 19:59:41 +0000 Subject: [PATCH] Fixed uDAPL issues with new CM git-svn-id: svn://openib.tc.cornell.edu/gen1@18 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86 --- branches/fab_cm_branch/core/al/kernel/SOURCES | 2 +- branches/fab_cm_branch/inc/ics_ver.h | 2 +- .../ulp/dapl/dapl/common/dapl_sp_util.c | 2 +- .../ulp/dapl/dapl/ibal/dapl_ibal_cm.c | 67 ++++++++++++------- 4 files changed, 44 insertions(+), 29 deletions(-) diff --git a/branches/fab_cm_branch/core/al/kernel/SOURCES b/branches/fab_cm_branch/core/al/kernel/SOURCES index 711167a9..1d2001f3 100644 --- a/branches/fab_cm_branch/core/al/kernel/SOURCES +++ b/branches/fab_cm_branch/core/al/kernel/SOURCES @@ -8,7 +8,6 @@ SOURCES= ibal.rc \ al_ca_pnp.c \ al_ci_ca.c \ al_cm_cep.c \ - al_cm_qp.c \ al_dev.c \ al_driver.c \ al_ioc_pnp.c \ @@ -27,6 +26,7 @@ SOURCES= ibal.rc \ ..\al_av.c \ ..\al_ca.c \ ..\al_ci_ca_shared.c \ + ..\al_cm_qp.c \ ..\al_common.c \ ..\al_cq.c \ ..\al_dm.c \ diff --git a/branches/fab_cm_branch/inc/ics_ver.h b/branches/fab_cm_branch/inc/ics_ver.h index d925eb3b..759ddd42 100644 --- a/branches/fab_cm_branch/inc/ics_ver.h +++ b/branches/fab_cm_branch/inc/ics_ver.h @@ -42,7 +42,7 @@ #endif #ifndef VER_FILEBUILD -#define VER_FILEBUILD 31 +#define VER_FILEBUILD 32 #endif #ifndef VER_FILEREV diff --git a/branches/fab_cm_branch/ulp/dapl/dapl/common/dapl_sp_util.c b/branches/fab_cm_branch/ulp/dapl/dapl/common/dapl_sp_util.c index 268b6200..a5554bf4 100644 --- a/branches/fab_cm_branch/ulp/dapl/dapl/common/dapl_sp_util.c +++ b/branches/fab_cm_branch/ulp/dapl/dapl/common/dapl_sp_util.c @@ -205,7 +205,7 @@ dapl_sp_search_cr ( do { - if ( !memcmp( &cr_ptr->ib_cm_handle, &ib_cm_handle, sizeof(ib_cm_handle_t) ) ) + if ( cr_ptr->ib_cm_handle.cid == ib_cm_handle.cid ) { cr_ptr_fnd = cr_ptr; diff --git a/branches/fab_cm_branch/ulp/dapl/dapl/ibal/dapl_ibal_cm.c b/branches/fab_cm_branch/ulp/dapl/dapl/ibal/dapl_ibal_cm.c index cac1fa9b..cd180bdd 100644 --- a/branches/fab_cm_branch/ulp/dapl/dapl/ibal/dapl_ibal_cm.c +++ b/branches/fab_cm_branch/ulp/dapl/dapl/ibal/dapl_ibal_cm.c @@ -53,7 +53,7 @@ dapli_ib_reg_svc_cb ( { DAPL_HCA *hca_ptr; - hca_ptr = (DAPL_HCA *) p_reg_svc_rec->svc_context; + hca_ptr = (DAPL_HCA * __ptr64) p_reg_svc_rec->svc_context; dapl_os_assert (hca_ptr); @@ -419,6 +419,7 @@ DAT_RETURN dapls_ib_ns_create_gid_map ( IN DAPL_HCA *hca_ptr) { + UNUSED_PARAM( hca_ptr ); return (DAT_SUCCESS); } @@ -427,6 +428,7 @@ DAT_RETURN dapls_ib_ns_remove_gid_map ( IN DAPL_HCA *hca_ptr) { + UNUSED_PARAM( hca_ptr ); return (DAT_SUCCESS); } @@ -461,7 +463,7 @@ dapli_ib_sa_query_cb ( p_path_rec = ib_get_query_path_rec (p_query_rec->p_result_mad, 0); if (p_path_rec) { - dapl_os_memcpy ((void *) p_query_rec->query_context, + dapl_os_memcpy ((void * __ptr64) p_query_rec->query_context, (void *) p_path_rec, sizeof (ib_path_rec_t)); dapl_dbg_log ( @@ -484,7 +486,7 @@ dapli_ib_sa_query_cb ( p_svc_rec = ib_get_query_svc_rec (p_query_rec->p_result_mad, 0); if (p_svc_rec) { - dapl_os_memcpy ((void *) p_query_rec->query_context, + dapl_os_memcpy ((void * __ptr64) p_query_rec->query_context, (void *) p_svc_rec, sizeof (ib_service_record_t)); dapl_dbg_log ( @@ -506,7 +508,7 @@ dapli_ib_sa_query_cb ( { ib_user_query_t *p_user_query; - p_user_query = (ib_user_query_t *) p_query_rec->query_context; + p_user_query = (ib_user_query_t * __ptr64) p_query_rec->query_context; if (p_user_query) { switch (p_user_query->attr_id) @@ -574,6 +576,7 @@ static void dapli_ibal_listen_err_cb ( IN ib_listen_err_rec_t *p_listen_err_rec ) { + UNUSED_PARAM( p_listen_err_rec ); dapl_dbg_log (DAPL_DBG_TYPE_CM, "--> %s: CM callback listen error\n", "DiLEcb"); } @@ -582,6 +585,7 @@ static void dapli_ib_cm_apr_cb ( IN ib_cm_apr_rec_t *p_cm_apr_rec ) { + UNUSED_PARAM( p_cm_apr_rec ); dapl_dbg_log (DAPL_DBG_TYPE_CM, "--> DiCAcb: CM callback APR (Alternate Path Request)\n"); } @@ -590,6 +594,7 @@ static void dapli_ib_cm_lap_cb ( IN ib_cm_lap_rec_t *p_cm_lap_rec ) { + UNUSED_PARAM( p_cm_lap_rec ); dapl_dbg_log (DAPL_DBG_TYPE_CM, "--> DiCLcb: CM callback LAP (Load Alternate Path)\n"); } @@ -604,7 +609,7 @@ dapli_ib_cm_dreq_cb ( dapl_os_assert (p_cm_dreq_rec); - ep_ptr = (DAPL_EP *) p_cm_dreq_rec->qp_context; + ep_ptr = (DAPL_EP * __ptr64) p_cm_dreq_rec->qp_context; if ( ep_ptr == NULL || ep_ptr->header.magic == DAPL_MAGIC_INVALID ) @@ -652,7 +657,7 @@ dapli_ib_cm_dreq_cb ( dapls_cr_callback ( p_cm_dreq_rec->h_cm_dreq, IB_CME_DISCONNECTED, - (void *) p_cm_dreq_rec->p_dreq_pdata, + (void * __ptr64) p_cm_dreq_rec->p_dreq_pdata, (void *) sp_ptr, NULL); } @@ -662,7 +667,7 @@ dapli_ib_cm_dreq_cb ( dapl_evd_connection_callback ( p_cm_dreq_rec->h_cm_dreq, IB_CME_DISCONNECTED, - (void *) p_cm_dreq_rec->p_dreq_pdata, + (void * __ptr64) p_cm_dreq_rec->p_dreq_pdata, p_cm_dreq_rec->qp_context); } } @@ -676,7 +681,7 @@ dapli_ib_cm_drep_cb ( dapl_os_assert (p_cm_drep_rec != NULL); - ep_ptr = (DAPL_EP *) p_cm_drep_rec->qp_context; + ep_ptr = (DAPL_EP * __ptr64) p_cm_drep_rec->qp_context; if (ep_ptr) { @@ -699,7 +704,7 @@ dapli_ib_cm_drep_cb ( dapls_cr_callback ( ep_ptr->cm_handle, IB_CME_DISCONNECTED, - (void *) p_cm_drep_rec->p_drep_pdata, + (void * __ptr64) p_cm_drep_rec->p_drep_pdata, (void *) sp_ptr, NULL); } @@ -709,7 +714,7 @@ dapli_ib_cm_drep_cb ( dapl_evd_connection_callback ( ep_ptr->cm_handle, IB_CME_DISCONNECTED, - (void *) p_cm_drep_rec->p_drep_pdata, + (void * __ptr64) p_cm_drep_rec->p_drep_pdata, p_cm_drep_rec->qp_context); } } @@ -731,10 +736,10 @@ dapli_ib_cm_rep_cb ( dapl_os_memzero (&cm_rtu, sizeof ( ib_cm_rtu_t )); - dapl_os_assert ( ((DAPL_HEADER *) p_cm_rep_rec->qp_context)->magic == + dapl_os_assert ( ((DAPL_HEADER * __ptr64) p_cm_rep_rec->qp_context)->magic == DAPL_MAGIC_EP ); - ep_ptr = (DAPL_EP *) p_cm_rep_rec->qp_context; + ep_ptr = (DAPL_EP * __ptr64) p_cm_rep_rec->qp_context; dapl_dbg_log (DAPL_DBG_TYPE_CM, "--> DiCRpcb: EP = %p local_max_rdma_read_in %d\n", ep_ptr, p_cm_rep_rec->resp_res); @@ -766,7 +771,7 @@ dapli_ib_cm_rep_cb ( cm_cb_op = IB_CME_LOCAL_FAILURE; } - prd_ptr = (DAPL_PRIVATE *) p_cm_rep_rec->p_rep_pdata; + prd_ptr = (DAPL_PRIVATE * __ptr64) p_cm_rep_rec->p_rep_pdata; #ifdef DAPL_DBG #if 0 @@ -791,7 +796,7 @@ dapli_ib_cm_rep_cb ( p_cm_rep_rec->h_cm_rep, cm_cb_op, (void *) prd_ptr, - (void *) p_cm_rep_rec->qp_context); + (void * __ptr64) p_cm_rep_rec->qp_context); } @@ -804,7 +809,7 @@ dapli_ib_cm_rej_cb ( dapl_os_assert (p_cm_rej_rec); - ep_ptr = (DAPL_EP *) p_cm_rej_rec->qp_context; + ep_ptr = (DAPL_EP * __ptr64) p_cm_rej_rec->qp_context; dapl_dbg_log (DAPL_DBG_TYPE_CM, "--> DiCRjcb: EP = %p QP = %p rej reason = 0x%x\n", @@ -865,7 +870,7 @@ dapli_ib_cm_rej_cb ( { dapls_cr_callback ( ep_ptr->cm_handle, cm_event, - (void *) p_cm_rej_rec->p_rej_pdata, + (void * __ptr64) p_cm_rej_rec->p_rej_pdata, (void *) ((DAPL_CR *) ep_ptr->cr_ptr)->sp_ptr, NULL); } @@ -873,8 +878,8 @@ dapli_ib_cm_rej_cb ( { dapl_evd_connection_callback ( ep_ptr->cm_handle, cm_event, - (void *) p_cm_rej_rec->p_rej_pdata, - (void *) p_cm_rej_rec->qp_context); + (void * __ptr64) p_cm_rej_rec->p_rej_pdata, + (void * __ptr64) p_cm_rej_rec->qp_context); } } @@ -889,7 +894,7 @@ dapli_ib_cm_req_cb ( dapl_os_assert (p_cm_req_rec); - sp_ptr = (DAPL_SP *) p_cm_req_rec->context; + sp_ptr = (DAPL_SP * __ptr64) p_cm_req_rec->context; dapl_os_assert (sp_ptr); @@ -970,8 +975,8 @@ dapli_ib_cm_req_cb ( dapls_cr_callback ( p_cm_req_rec->h_cm_req, IB_CME_CONNECTION_REQUEST_PENDING, - (void *) p_cm_req_rec->p_req_pdata, - (void *) p_cm_req_rec->context, + (void * __ptr64) p_cm_req_rec->p_req_pdata, + (void * __ptr64) p_cm_req_rec->context, (DAT_IA_ADDRESS_PTR)&dest_ia_addr); } @@ -980,6 +985,7 @@ static void dapli_ib_cm_mra_cb ( IN ib_cm_mra_rec_t *p_cm_mra_rec ) { + UNUSED_PARAM( p_cm_mra_rec ); dapl_dbg_log (DAPL_DBG_TYPE_CM | DAPL_DBG_TYPE_CALLBACK, "--> DiCMcb: CM callback MRA\n"); } @@ -992,7 +998,7 @@ dapli_ib_cm_rtu_cb ( dapl_os_assert (p_cm_rtu_rec != NULL); - ep_ptr = (DAPL_EP *) p_cm_rtu_rec->qp_context; + ep_ptr = (DAPL_EP * __ptr64) p_cm_rtu_rec->qp_context; dapl_dbg_log (DAPL_DBG_TYPE_CM | DAPL_DBG_TYPE_CALLBACK, "--> DiCRucb: EP = %p QP = %p\n", ep_ptr, ep_ptr->qp_handle); @@ -1005,7 +1011,7 @@ dapli_ib_cm_rtu_cb ( dapls_cr_callback ( ep_ptr->cm_handle, IB_CME_CONNECTED, - (void *) p_cm_rtu_rec->p_rtu_pdata, + (void * __ptr64) p_cm_rtu_rec->p_rtu_pdata, (void *) sp_ptr, NULL); @@ -1015,7 +1021,7 @@ dapli_ib_cm_rtu_cb ( dapl_evd_connection_callback ( ep_ptr->cm_handle, IB_CME_CONNECTED, - (void *) p_cm_rtu_rec->p_rtu_pdata, + (void * __ptr64) p_cm_rtu_rec->p_rtu_pdata, (void *) ep_ptr); } } @@ -1039,6 +1045,9 @@ dapls_ib_cm_remote_addr ( IN DAPL_PRIVATE *prd_ptr, OUT DAT_SOCK_ADDR6 *remote_ia_address ) { + UNUSED_PARAM( dat_handle ); + UNUSED_PARAM( prd_ptr ); + UNUSED_PARAM( remote_ia_address ); return DAT_SUCCESS; } @@ -1320,6 +1329,8 @@ DAT_RETURN ib_api_status_t ib_status; ib_cm_dreq_t cm_dreq; + UNUSED_PARAM( disconnect_flags ); + ia_ptr = ep_ptr->header.owner_ia; ib_status = IB_SUCCESS; @@ -1481,6 +1492,8 @@ DAT_RETURN dapls_ib_remove_conn_listener ( ib_api_status_t ib_status; DAT_RETURN dat_status = DAT_SUCCESS; + UNUSED_PARAM( ia_ptr ); + if (sp_ptr->cm_srvc_handle) { ib_status = ib_cm_cancel (sp_ptr->cm_srvc_handle, @@ -1562,7 +1575,7 @@ dapls_ib_reject_connection ( if (ib_status != IB_SUCCESS) { dapl_dbg_log ( DAPL_DBG_TYPE_ERR,"--> DsRjC: cm_handle = %p reject failed = %s\n", - ib_cm_handle, ib_get_err_str(ib_status)); + &ib_cm_handle, ib_get_err_str(ib_status)); } return ( dapl_ib_status_convert ( ib_status ) ); @@ -1816,7 +1829,7 @@ dapls_ib_cr_handoff ( cr_ptr = (DAPL_CR *) cr_handle; - if (cr_ptr->ib_cm_handle.cid = 0xFFFFFFFF) + if (cr_ptr->ib_cm_handle.cid == 0xFFFFFFFF) { dapl_dbg_log ( DAPL_DBG_TYPE_ERR,"--> DsCH: CR = %p invalid cm handle\n", cr_ptr); return DAT_INVALID_PARAMETER; @@ -1908,6 +1921,8 @@ dapls_ib_private_data_size ( { int size; + UNUSED_PARAM( prd_ptr ); + switch (conn_op) { case DAPL_PDATA_CONN_REQ: -- 2.41.0