From f16d61a9fde8b8848582daa8427654799f598e4d Mon Sep 17 00:00:00 2001 From: Sean Hefty Date: Tue, 5 Jun 2012 16:18:58 -0700 Subject: [PATCH] Refresh of rs-defaults --- src/rsocket.c | 53 +++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 45 insertions(+), 8 deletions(-) diff --git a/src/rsocket.c b/src/rsocket.c index 3619af45..06e597ff 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 unsigned long long 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, "%Lu", &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); -- 2.45.2