aboutsummaryrefslogtreecommitdiffstats
path: root/src/svm
diff options
context:
space:
mode:
authorFilip Tehlar <ftehlar@cisco.com>2021-11-24 10:30:59 +0000
committerFilip Tehlar <ftehlar@cisco.com>2021-11-24 19:48:52 +0000
commit2711ca710affe0c52bf63e08e0cf0588094e6198 (patch)
tree14226994c19666bef5b3c25826ee84f9935cf6ba /src/svm
parent32c7335ea9da8470041be2f155afba77985809db (diff)
session: improve fifo segment allocation
This patch ensures that fifo segment has at least the size that was requested during allocation. Type: improvement Signed-off-by: Filip Tehlar <ftehlar@cisco.com> Change-Id: Iea8a885ac290183e25e5c8f9163bba226c5efa15
Diffstat (limited to 'src/svm')
-rw-r--r--src/svm/fifo_segment.c2
-rw-r--r--src/svm/fifo_segment.h2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/svm/fifo_segment.c b/src/svm/fifo_segment.c
index 2ff272e2f88..48d019c9aac 100644
--- a/src/svm/fifo_segment.c
+++ b/src/svm/fifo_segment.c
@@ -295,7 +295,7 @@ fss_fl_chunk_bytes_sub (fifo_segment_slice_t * fss, uword size)
int
fifo_segment_init (fifo_segment_t * fs)
{
- u32 align = 8, offset = 2 * 4096, slices_sz, i;
+ u32 align = 8, offset = FIFO_SEGMENT_ALLOC_OVERHEAD, slices_sz, i;
uword max_fifo, seg_start, seg_sz;
fifo_segment_header_t *fsh;
ssvm_shared_header_t *sh;
diff --git a/src/svm/fifo_segment.h b/src/svm/fifo_segment.h
index de4622f6a2a..440f1bb6a02 100644
--- a/src/svm/fifo_segment.h
+++ b/src/svm/fifo_segment.h
@@ -20,6 +20,8 @@
#include <svm/message_queue.h>
#include <svm/svm_fifo.h>
+#define FIFO_SEGMENT_ALLOC_OVERHEAD (2 * clib_mem_get_page_size ())
+
typedef enum
{
FIFO_SEGMENT_FTYPE_NONE = -1,