summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/vnet/session/application.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/vnet/session/application.c b/src/vnet/session/application.c
index 03e1eae3a85..e575a3df584 100644
--- a/src/vnet/session/application.c
+++ b/src/vnet/session/application.c
@@ -525,15 +525,17 @@ application_alloc_and_init (app_init_args_t * a)
}
else
{
- if (options[APP_OPTIONS_FLAGS] & APP_OPTIONS_FLAGS_EVT_MQ_USE_EVENTFD)
- {
- clib_warning ("mq eventfds can only be used if socket transport is "
- "used for api");
- return VNET_API_ERROR_APP_UNSUPPORTED_CFG;
- }
seg_type = SSVM_SEGMENT_PRIVATE;
}
+ if ((options[APP_OPTIONS_FLAGS] & APP_OPTIONS_FLAGS_EVT_MQ_USE_EVENTFD)
+ && seg_type != SSVM_SEGMENT_MEMFD)
+ {
+ clib_warning ("mq eventfds can only be used if socket transport is "
+ "used for binary api");
+ return VNET_API_ERROR_APP_UNSUPPORTED_CFG;
+ }
+
if (!application_verify_cfg (seg_type))
return VNET_API_ERROR_APP_UNSUPPORTED_CFG;