summaryrefslogtreecommitdiffstats
path: root/src/vcl/vcl_sapi.c
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2021-01-27 18:08:25 -0800
committerDave Barach <openvpp@barachs.net>2021-01-28 15:57:33 +0000
commit80b742592bd227cedb22362abb6286838977ba4f (patch)
treeca87e72c58df443744cc6b50a65feaf947ef36de /src/vcl/vcl_sapi.c
parentb13ba133fbdb3a66a6c3ddf19a2bc80525b92606 (diff)
svm vcl: add helper fn that discovers mqs in segment
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I1b083ee793a7cf91b1001bfe88353fa5e6515c42
Diffstat (limited to 'src/vcl/vcl_sapi.c')
-rw-r--r--src/vcl/vcl_sapi.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/vcl/vcl_sapi.c b/src/vcl/vcl_sapi.c
index 1bab7eaba13..5258722a484 100644
--- a/src/vcl/vcl_sapi.c
+++ b/src/vcl/vcl_sapi.c
@@ -71,10 +71,6 @@ vcl_api_attach_reply_handler (app_sapi_attach_reply_msg_t * mp, int *fds)
SSVM_SEGMENT_MEMFD, fds[n_fds_used++]))
goto failed;
- vcl_segment_attach_mq (vcl_vpp_worker_segment_handle (0), mp->vpp_ctrl_mq,
- mp->vpp_ctrl_mq_thread, &wrk->ctrl_mq);
- vcm->ctrl_mq = wrk->ctrl_mq;
-
if (mp->fd_flags & SESSION_FD_F_MEMFD_SEGMENT)
{
segment_name = format (0, "memfd-%ld%c", segment_handle, 0);
@@ -93,6 +89,12 @@ vcl_api_attach_reply_handler (app_sapi_attach_reply_msg_t * mp, int *fds)
vcl_mq_epoll_add_evfd (wrk, wrk->app_event_queue);
}
+ vcl_segment_discover_mqs (vcl_vpp_worker_segment_handle (0),
+ fds + n_fds_used, mp->n_fds - n_fds_used);
+ vcl_segment_attach_mq (vcl_vpp_worker_segment_handle (0), mp->vpp_ctrl_mq,
+ mp->vpp_ctrl_mq_thread, &wrk->ctrl_mq);
+ vcm->ctrl_mq = wrk->ctrl_mq;
+
vcm->app_index = mp->app_index;
return 0;