summaryrefslogtreecommitdiffstats
path: root/src/svm/ssvm.h
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2018-01-31 06:52:17 -0800
committerDave Barach <openvpp@barachs.net>2018-02-05 21:45:28 +0000
commita332c46a51f9b4e13963340dfee1318e7513c124 (patch)
treefde1056972c5b164987bd15ce0530a3d48d1bbd7 /src/svm/ssvm.h
parente71eb5922a293eca36dbd323970741daaca3c5c7 (diff)
session: segment manager refactor
- use valloc as a 'central' segment baseva manager - use per segment manager segment pools and use rwlocks to guard them - add session test that exercises segment creation - embed segment manager properties into application since they're shared - fix rw locks Change-Id: I761164c147275d9e8a926f1eda395e090d231f9a Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src/svm/ssvm.h')
-rw-r--r--src/svm/ssvm.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/svm/ssvm.h b/src/svm/ssvm.h
index 9bf009e73d2..09e1707450b 100644
--- a/src/svm/ssvm.h
+++ b/src/svm/ssvm.h
@@ -49,6 +49,7 @@ typedef enum ssvm_segment_type_
{
SSVM_SEGMENT_SHM = 0,
SSVM_SEGMENT_MEMFD,
+ SSVM_SEGMENT_PRIVATE,
SSVM_N_SEGMENT_TYPES /**< Private segments */
} ssvm_segment_type_t;
@@ -195,6 +196,10 @@ int ssvm_master_init_memfd (ssvm_private_t * memfd);
int ssvm_slave_init_memfd (ssvm_private_t * memfd);
void ssvm_delete_memfd (ssvm_private_t * memfd);
+int ssvm_master_init_private (ssvm_private_t * ssvm);
+int ssvm_slave_init_private (ssvm_private_t * ssvm);
+void ssvm_delete_private (ssvm_private_t * ssvm);
+
ssvm_segment_type_t ssvm_type (const ssvm_private_t * ssvm);
u8 *ssvm_name (const ssvm_private_t * ssvm);