From: Sean Hefty Date: Tue, 5 Jun 2012 23:22:32 +0000 (-0700) Subject: Refresh of rs-defaults X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=ce6ed3b166eb08c64158f642eb5317de69d06821;p=~shefty%2Flibrdmacm.git Refresh of rs-defaults --- diff --git a/src/rsocket.c b/src/rsocket.c index bb665036..68316f99 100644 --- a/src/rsocket.c +++ b/src/rsocket.c @@ -53,20 +53,21 @@ #include "cma.h" #include "indexer.h" -#define RS_INLINE 64 #define RS_OLAP_START_SIZE 2048 #define RS_MAX_TRANSFER 65536 -#define RS_QP_SIZE 384 #define RS_QP_MAX_SIZE 0xFFFE -#define RS_QP_MIN_SIZE 8 #define RS_QP_CTRL_SIZE 4 #define RS_CONN_RETRIES 6 #define RS_SGL_SIZE 2 -#define RS_BUF_SIZE (1 << 17) static struct index_map idm; static pthread_mutex_t mut = PTHREAD_MUTEX_INITIALIZER; -static uint32_t polling_time; +static uint16_t def_inline = 64; +static uint16_t def_sqsize = 384; +static uint16_t def_rqsize = 384; +static uint32_t def_mem = (1 << 17); +static uint32_t def_wmem = (1 << 17); +static uint32_t polling_time = 8; /* * Immediate data format is determined by the upper bits @@ -209,6 +210,40 @@ void rs_configure(void) fscanf(f, "%u", &polling_time); fclose(f); } + + if ((f = fopen(RS_CONF_DIR "/inline_default", "r"))) { + fscanf(f, "%hu", &def_inline); + fclose(f); + + if (def_inline < RS_MIN_INLINE) + def_inline = RS_MIN_INLINE; + } + + if ((f = fopen(RS_CONF_DIR "/sqsize_default", "r"))) { + fscanf(f, "%hu", &def_sqsize); + fclose(f); + } + + if ((f = fopen(RS_CONF_DIR "/rqsize_default", "r"))) { + fscanf(f, "%hu", &def_rqsize); + fclose(f); + } + + if ((f = fopen(RS_CONF_DIR "/mem_default", "r"))) { + fscanf(f, "%u", &def_mem); + fclose(f); + + if (def_mem < 1) + def_mem = 1; + } + + if ((f = fopen(RS_CONF_DIR "/wmem_default", "r"))) { + fscanf(f, "%u", &def_wmem); + fclose(f); + + if (def_wmem < 1) + def_wmem = 1; + } } /* @@ -254,9 +289,11 @@ static struct rsocket *rs_alloc(struct rsocket *inherited_rs) rs->rq_size = inherited_rs->rq_size; rs->ctrl_avail = inherited_rs->ctrl_avail; } else { - rs->sbuf_size = rs->rbuf_size = RS_BUF_SIZE; - rs->sq_inline = RS_INLINE; - rs->sq_size = rs->rq_size = RS_QP_SIZE; + rs->sbuf_size = def_wmem; + rs->rbuf_size = def_mem; + rs->sq_inline = def_inline; + rs->sq_size = def_sqsize; + rs->rq_size = def_rqsize; rs->ctrl_avail = RS_QP_CTRL_SIZE; } fastlock_init(&rs->slock);