From: Michael Brown Date: Mon, 10 Aug 2009 01:10:17 +0000 (+0100) Subject: [hermon] Reduce the RC ACK timeout X-Git-Tag: v0.9.8~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1175f0cf29acbb8328e1ab054bb0f5d7077c3cc0;p=thirdparty%2Fipxe.git [hermon] Reduce the RC ACK timeout The ACK timeout determines how long we take to notice a failed Reliable Connection. Reducing it from the arbitrary value of 19 down to 14 reduces the individual ACK timeout from around 2.1s to 67ms; this in turn reduces the time to tear down and re-establish a broken SRP session from around 30s to around 1s. --- diff --git a/src/drivers/infiniband/hermon.c b/src/drivers/infiniband/hermon.c index 0012904f8..bff128fd0 100644 --- a/src/drivers/infiniband/hermon.c +++ b/src/drivers/infiniband/hermon.c @@ -1108,7 +1108,7 @@ static int hermon_modify_qp ( struct ib_device *ibdev, memset ( &qpctx, 0, sizeof ( qpctx ) ); MLX_FILL_1 ( &qpctx, 10, qpc_eec_data.primary_address_path.ack_timeout, - 0x13 ); + 14 /* 4.096us * 2^(14) = 67ms */ ); MLX_FILL_2 ( &qpctx, 30, qpc_eec_data.retry_count, HERMON_RETRY_MAX, qpc_eec_data.rnr_retry, HERMON_RETRY_MAX );