summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/svm/message_queue.c7
-rw-r--r--src/vnet/session/session.c6
2 files changed, 10 insertions, 3 deletions
diff --git a/src/svm/message_queue.c b/src/svm/message_queue.c
index dc0f6251120..4f3e7642740 100644
--- a/src/svm/message_queue.c
+++ b/src/svm/message_queue.c
@@ -21,6 +21,7 @@ svm_msg_q_alloc (svm_msg_q_cfg_t * cfg)
{
svm_msg_q_ring_t *ring;
svm_msg_q_t *mq;
+ uword size;
int i;
if (!cfg)
@@ -39,8 +40,10 @@ svm_msg_q_alloc (svm_msg_q_cfg_t * cfg)
if (cfg->ring_cfgs[i].data)
ring->data = cfg->ring_cfgs[i].data;
else
- ring->data = clib_mem_alloc_aligned (ring->nitems * ring->elsize,
- CLIB_CACHE_LINE_BYTES);
+ {
+ size = (uword) ring->nitems * ring->elsize;
+ ring->data = clib_mem_alloc_aligned (size, CLIB_CACHE_LINE_BYTES);
+ }
}
return mq;
diff --git a/src/vnet/session/session.c b/src/vnet/session/session.c
index 7131f51cdda..26bc70e6fd7 100644
--- a/src/vnet/session/session.c
+++ b/src/vnet/session/session.c
@@ -1217,7 +1217,11 @@ session_vpp_event_queues_allocate (session_manager_main_t * smm)
eqs->name = format (0, "%s%c", "evt-qs-segment", 0);
eqs->requested_va = smm->session_baseva;
- ssvm_master_init (eqs, SSVM_SEGMENT_MEMFD);
+ if (ssvm_master_init (eqs, SSVM_SEGMENT_MEMFD))
+ {
+ clib_warning ("failed to initialize queue segment");
+ return;
+ }
}
if (smm->evt_qs_use_memfd_seg)