diff options
author | Florin Coras <fcoras@cisco.com> | 2019-01-25 13:19:56 -0800 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2019-01-26 14:51:55 +0000 |
commit | e0982e56f0b644fbec429fa8639ddb1b3403bea8 (patch) | |
tree | 71649701e22137424e3d579ed00f091ebe44691a /src/vcl | |
parent | ff426930051664aee1638ccff23c3345b4c129e7 (diff) |
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 <fcoras@cisco.com>
Diffstat (limited to 'src/vcl')
-rw-r--r-- | src/vcl/vppcom.c | 9 | ||||
-rw-r--r-- | src/vcl/vppcom.h | 8 |
2 files changed, 17 insertions, 0 deletions
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 } |