From d2c66eb7363234c5a9fb82aa92df1c132e46477e Mon Sep 17 00:00:00 2001 From: Arlin Davis Date: Tue, 20 Nov 2007 12:07:58 -0800 Subject: [PATCH] - Lower default settings (rdma ops, inline sends) for latest iWARP/IB devices - Add missing ia_query for max_iov_segments_per_rdma_write - Cleanup CMA code no longer supported by rdma_cm Signed-off by: Arlin Davis --- dapl/common/dapl_ep_util.c | 2 +- dapl/openib_cma/dapl_ib_cm.c | 30 ------------------------------ dapl/openib_cma/dapl_ib_util.c | 1 + dapl/openib_cma/dapl_ib_util.h | 2 +- 4 files changed, 3 insertions(+), 32 deletions(-) diff --git a/dapl/common/dapl_ep_util.c b/dapl/common/dapl_ep_util.c index d11aed3..4518a2b 100644 --- a/dapl/common/dapl_ep_util.c +++ b/dapl/common/dapl_ep_util.c @@ -57,7 +57,7 @@ /* * Default number of RDMA operations in progress at a time */ -#define IB_RDMA_DEFAULT 8 +#define IB_RDMA_DEFAULT 4 extern void dapli_ep_default_attrs ( IN DAPL_EP *ep_ptr ); diff --git a/dapl/openib_cma/dapl_ib_cm.c b/dapl/openib_cma/dapl_ib_cm.c index 518a7af..e8c33f2 100755 --- a/dapl/openib_cma/dapl_ib_cm.c +++ b/dapl/openib_cma/dapl_ib_cm.c @@ -141,37 +141,7 @@ static void dapli_route_resolve(struct dapl_cm_id *conn) conn->params.private_data_len, conn->params.responder_resources, conn->params.initiator_depth ); -#if 0 - /* Get default connect request timeout values, and adjust */ - ret = rdma_get_option(conn->cm_id, RDMA_PROTO_IB, IB_CM_REQ_OPTIONS, - (void*)&req_opt, &optlen); - if (ret) { - dapl_dbg_log(DAPL_DBG_TYPE_ERR, " rdma_get_option failed: %s\n", - strerror(errno)); - goto bail; - } - dapl_dbg_log(DAPL_DBG_TYPE_CM, " route_resolve: " - "Set CR times - response %d to %d, retry %d to %d\n", - req_opt.remote_cm_response_timeout, - conn->hca->ib_trans.max_cm_timeout, - req_opt.max_cm_retries, - conn->hca->ib_trans.max_cm_retries); - - /* Use hca response time setting for connect requests */ - req_opt.max_cm_retries = conn->hca->ib_trans.max_cm_retries; - req_opt.remote_cm_response_timeout = - conn->hca->ib_trans.max_cm_timeout; - req_opt.local_cm_response_timeout = - req_opt.remote_cm_response_timeout; - ret = rdma_set_option(conn->cm_id, RDMA_PROTO_IB, IB_CM_REQ_OPTIONS, - (void*)&req_opt, optlen); - if (ret) { - dapl_dbg_log(DAPL_DBG_TYPE_ERR, " rdma_set_option failed: %s\n", - strerror(errno)); - goto bail; - } -#endif ret = rdma_connect(conn->cm_id, &conn->params); if (ret) { dapl_dbg_log(DAPL_DBG_TYPE_ERR, " rdma_connect failed: %s\n", diff --git a/dapl/openib_cma/dapl_ib_util.c b/dapl/openib_cma/dapl_ib_util.c index 83b4b3a..23655b6 100755 --- a/dapl/openib_cma/dapl_ib_util.c +++ b/dapl/openib_cma/dapl_ib_util.c @@ -481,6 +481,7 @@ DAT_RETURN dapls_ib_query_hca(IN DAPL_HCA *hca_ptr, ia_attr->num_vendor_attr = 0; ia_attr->vendor_attr = NULL; ia_attr->max_iov_segments_per_rdma_read = dev_attr.max_sge; + ia_attr->max_iov_segments_per_rdma_write = dev_attr.max_sge; /* save rd_atom for peer validation during connect requests */ hca_ptr->ib_trans.max_rdma_rd_in = dev_attr.max_qp_rd_atom; hca_ptr->ib_trans.max_rdma_rd_out = dev_attr.max_qp_rd_atom; diff --git a/dapl/openib_cma/dapl_ib_util.h b/dapl/openib_cma/dapl_ib_util.h index 6f57d71..5d7d9f8 100755 --- a/dapl/openib_cma/dapl_ib_util.h +++ b/dapl/openib_cma/dapl_ib_util.h @@ -111,7 +111,7 @@ typedef struct _ib_wait_obj_handle #define IB_INVALID_HANDLE NULL /* inline send rdma threshold */ -#define INLINE_SEND_DEFAULT 128 +#define INLINE_SEND_DEFAULT 64 /* CM private data areas */ #define IB_MAX_REQ_PDATA_SIZE 48 -- 2.46.0