From 5ac6f3eab852606575f9affa515ec77b978a001c Mon Sep 17 00:00:00 2001 From: Sean Hefty Date: Thu, 17 Apr 2014 08:37:47 -0700 Subject: [PATCH] rsocket: Dedicate a fixed number of SQEs for control messages The number of SQEs allocated for control messages is set to 1 of 2 constant values (either 4 or 2). A default value is used unless the size of the SQ is below a certain threshold (16 entries). This results in additional code complexity, and it is highly unlikely that the SQ would ever be allocated smaller than 16 entries. Simplify the code to use a single constant value for the number of SQEs allocated for control messages. This will also help in subsequent patches that will need to deal with HCAs that do not support inline data. Signed-off-by: Sean Hefty --- src/rsocket.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/rsocket.c b/src/rsocket.c index 7c5083ce..ea18ba72 100644 --- a/src/rsocket.c +++ b/src/rsocket.c @@ -59,6 +59,7 @@ #define RS_OLAP_START_SIZE 2048 #define RS_MAX_TRANSFER 65536 #define RS_SNDLOWAT 2048 +#define RS_QP_MIN_SIZE 16 #define RS_QP_MAX_SIZE 0xFFFE #define RS_QP_CTRL_SIZE 4 #define RS_CONN_RETRIES 6 @@ -642,15 +643,13 @@ static void rs_set_qp_size(struct rsocket *rs) if (rs->sq_size > max_size) rs->sq_size = max_size; - else if (rs->sq_size < 4) - rs->sq_size = 4; - if (rs->sq_size <= (RS_QP_CTRL_SIZE << 2)) - rs->ctrl_avail = 2; + else if (rs->sq_size < RS_QP_MIN_SIZE) + rs->sq_size = RS_QP_MIN_SIZE; if (rs->rq_size > max_size) rs->rq_size = max_size; - else if (rs->rq_size < 4) - rs->rq_size = 4; + else if (rs->rq_size < RS_QP_MIN_SIZE) + rs->rq_size = RS_QP_MIN_SIZE; } static void ds_set_qp_size(struct rsocket *rs) -- 2.41.0