[ofa-general] [PATCH] uDAPL v2.0 - lower default attributes, add missing query, cleanup

Arlin Davis arlin.r.davis at intel.com
Tue Nov 20 12:07:27 PST 2007


- 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 <ardavis at ichips.intel.com>

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




More information about the general mailing list