From: Florin Coras Date: Fri, 25 Jan 2019 21:19:56 +0000 (-0800) Subject: vcl: add api to expose worker message queues epfd X-Git-Tag: v19.04-rc1~587 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=e0982e56f0b644fbec429fa8639ddb1b3403bea8;hp=ff426930051664aee1638ccff23c3345b4c129e7;p=vpp.git vcl: add api to expose worker message queues epfd This only works if vcl is configured to do eventd based message queue notifications, instead of condvars. For that, add "use-mq-eventfd" to vcl startup conf. Change-Id: Id0f0288a40ec7d3daef7370f8b88420425867ab6 Signed-off-by: Florin Coras --- diff --git a/src/vcl/vppcom.c b/src/vcl/vppcom.c index d9012cdaed6..317351d7612 100644 --- a/src/vcl/vppcom.c +++ b/src/vcl/vppcom.c @@ -3594,6 +3594,15 @@ vppcom_worker_index (void) return vcl_get_worker_index (); } +int +vppcom_worker_mqs_epfd (void) +{ + vcl_worker_t *wrk = vcl_worker_get_current (); + if (!vcm->cfg.use_mq_eventfd) + return -1; + return wrk->mqs_epfd; +} + /* * fd.io coding-style-patch-verification: ON * diff --git a/src/vcl/vppcom.h b/src/vcl/vppcom.h index 4db3d980099..053abc97781 100644 --- a/src/vcl/vppcom.h +++ b/src/vcl/vppcom.h @@ -308,6 +308,14 @@ extern int vppcom_worker_register (void); */ extern int vppcom_worker_index (void); +/** + * Returns the current worker's message queues epoll fd + * + * This only works if vcl is configured to do eventfd based message queue + * notifications. + */ +extern int vppcom_worker_mqs_epfd (void); + /* *INDENT-OFF* */ #ifdef __cplusplus }