[ofa-general] [PATCH] OFED 1.2.1 rdma_cm response timeout module parameter
Or Gerlitz
ogerlitz at voltaire.com
Thu Jul 12 00:44:35 PDT 2007
Davis, Arlin R wrote:
> Sean,
>
> OFED 1.2 removed the rdma_set_option call used to adjust response
> timeout. We are running into some cases on larger clusters that require
> longer timeouts then the default. Can you consider this rdma_cm patch
> for OFED 1.2.1 that adds a module parameter for the response timeout?
> Thanks.
>
> Signed-off by: Arlin Davis <ardavis at ichips.intel.com>
Sean,
You have approved this patch for OFED 1.2.1, does it suitable also for
upstream, and if not how you think it would be correct to proceed?
thanks,
Or.
>
> --- a/drivers/infiniband/core/cma.c 2007-07-11 10:46:48.000000000
> -0700
> +++ b/drivers/infiniband/core/cma.c 2007-07-11 10:54:16.000000000
> -0700
> @@ -58,6 +58,10 @@ MODULE_PARM_DESC(tavor_quirk, "Tavor per
> #define CMA_CM_RESPONSE_TIMEOUT 20
> #define CMA_MAX_CM_RETRIES 15
>
> +static int cma_response_timeout = CMA_CM_RESPONSE_TIMEOUT;
> +module_param_named(cma_response_timeout, cma_response_timeout, int,
> 0644);
> +MODULE_PARM_DESC(cma_response_timeout, "CMA_CM_RESPONSE_TIMEOUT
> default=20");
> +
> static void cma_add_one(struct ib_device *device);
> static void cma_remove_one(struct ib_device *device);
>
> @@ -2157,7 +2161,7 @@ static int cma_resolve_ib_udp(struct rdm
> req.path = route->path_rec;
> req.service_id = cma_get_service_id(id_priv->id.ps,
> &route->addr.dst_addr);
> - req.timeout_ms = 1 << (CMA_CM_RESPONSE_TIMEOUT - 8);
> + req.timeout_ms = 1 << (cma_response_timeout - 8);
> req.max_cm_retries = CMA_MAX_CM_RETRIES;
>
> ret = ib_send_cm_sidr_req(id_priv->cm_id.ib, &req);
> @@ -2216,8 +2220,8 @@ static int cma_connect_ib(struct rdma_id
> req.flow_control = conn_param->flow_control;
> req.retry_count = conn_param->retry_count;
> req.rnr_retry_count = conn_param->rnr_retry_count;
> - req.remote_cm_response_timeout = CMA_CM_RESPONSE_TIMEOUT;
> - req.local_cm_response_timeout = CMA_CM_RESPONSE_TIMEOUT;
> + req.remote_cm_response_timeout = cma_response_timeout;
> + req.local_cm_response_timeout = cma_response_timeout;
> req.max_cm_retries = CMA_MAX_CM_RETRIES;
> req.srq = id_priv->srq ? 1 : 0;
>
> @@ -2344,7 +2348,7 @@ static int cma_accept_ib(struct rdma_id_
> rep.private_data_len = conn_param->private_data_len;
> rep.responder_resources = conn_param->responder_resources;
> rep.initiator_depth = conn_param->initiator_depth;
> - rep.target_ack_delay = CMA_CM_RESPONSE_TIMEOUT;
> + rep.target_ack_delay = cma_response_timeout;
> rep.failover_accepted = 0;
> rep.flow_control = conn_param->flow_control;
> rep.rnr_retry_count = conn_param->rnr_retry_count;
> _______________________________________________
> general mailing list
> general at lists.openfabrics.org
> http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general
>
> To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
More information about the general
mailing list