summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authordimitri staessens <dimitri.staessens@ugent.be>2017-04-01 12:31:05 +0000
committerSander Vrijders <sander.vrijders@ugent.be>2017-04-01 12:31:05 +0000
commit2725780520d0e2c6a2c49ac8e2124b5088cbe1bb (patch)
tree833a7f4133fb3f3f8d746343cff6fb9fc40f7829 /include
parentd9f3619d791fef7d79127556304a4aa4f1cda50a (diff)
parentc72634b5d921bc06d8e06afb2a60a05a1acb7ee2 (diff)
downloadouroboros-2725780520d0e2c6a2c49ac8e2124b5088cbe1bb.tar.gz
ouroboros-2725780520d0e2c6a2c49ac8e2124b5088cbe1bb.zip
Merged in dstaesse/ouroboros/be-irmd-threadpool (pull request #448)
Be irmd threadpool
Diffstat (limited to 'include')
-rw-r--r--include/ouroboros/bitmap.h5
-rw-r--r--include/ouroboros/config.h.in11
2 files changed, 12 insertions, 4 deletions
diff --git a/include/ouroboros/bitmap.h b/include/ouroboros/bitmap.h
index cb62312a..d6bb250b 100644
--- a/include/ouroboros/bitmap.h
+++ b/include/ouroboros/bitmap.h
@@ -33,7 +33,7 @@ struct bmp;
struct bmp * bmp_create(size_t bits,
ssize_t offset);
-int bmp_destroy(struct bmp * b);
+void bmp_destroy(struct bmp * b);
ssize_t bmp_allocate(struct bmp * instance);
@@ -43,4 +43,7 @@ int bmp_release(struct bmp * instance,
bool bmp_is_id_valid(struct bmp * b,
ssize_t id);
+bool bmp_is_id_used(struct bmp * b,
+ ssize_t id);
+
#endif /* OUROBOROS_BITMAP_H */
diff --git a/include/ouroboros/config.h.in b/include/ouroboros/config.h.in
index 7616961c..067a2f85 100644
--- a/include/ouroboros/config.h.in
+++ b/include/ouroboros/config.h.in
@@ -35,7 +35,7 @@
#define IPCP_SHIM_ETH_LLC_EXEC "@IPCP_SHIM_ETH_LLC_TARGET@"
#define IPCP_NORMAL_EXEC "@IPCP_NORMAL_TARGET@"
#define IPCP_LOCAL_EXEC "@IPCP_LOCAL_TARGET@"
-#define AP_MAX_FLOWS 256
+#define AP_MAX_FLOWS 2048
#define AP_MAX_FQUEUES 64
#define SHM_RDRB_BLOCK_SIZE sysconf(_SC_PAGESIZE)
#define SHM_RDRB_MULTI_BLOCK
@@ -47,14 +47,19 @@
#define SHM_RBUFF_PREFIX "/ouroboros.rbuff."
#define SHM_FLOW_SET_PREFIX "/ouroboros.sets."
#define IRMD_MAX_FLOWS 4096
-#define IRMD_THREADPOOL_SIZE 16
+/* IRMD dynamic threadpooling */
+#define IRMD_MIN_AV_THREADS 16
+#define IRMD_MAX_AV_THREADS 64
+#define IRMD_MAX_THREADS 256
+
#define IPCPD_THREADPOOL_SIZE 16
#define IPCPD_MAX_CONNS IRMD_MAX_FLOWS
#define PTHREAD_COND_CLOCK CLOCK_MONOTONIC
#define PFT_SIZE 1 << 12
/* Timeout values */
+#define IRMD_TPM_TIMEOUT 1000
#define IRMD_ACCEPT_TIMEOUT 100
-#define IRMD_REQ_ARR_TIMEOUT 200
+#define IRMD_REQ_ARR_TIMEOUT 500
#define IRMD_FLOW_TIMEOUT 5000
#define IPCP_ACCEPT_TIMEOUT 100
#define SOCKET_TIMEOUT 4000