From 20e272c8fce5571122ca149526ee8ddf6f43ee3f Mon Sep 17 00:00:00 2001 From: Damjan Marion Date: Tue, 14 Mar 2017 11:10:00 +0100 Subject: [PATCH] vlib: poll pre_input nodes only on main thread Change-Id: I61464fd1610a9754693f31edd72f9fa1b6926511 Signed-off-by: Damjan Marion --- src/vlib/main.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/vlib/main.c b/src/vlib/main.c index 917607067eb..58e88fccc4a 100644 --- a/src/vlib/main.c +++ b/src/vlib/main.c @@ -1468,12 +1468,13 @@ vlib_main_or_worker_loop (vlib_main_t * vm, int is_main) } /* Process pre-input nodes. */ - vec_foreach (n, nm->nodes_by_type[VLIB_NODE_TYPE_PRE_INPUT]) - cpu_time_now = dispatch_node (vm, n, - VLIB_NODE_TYPE_PRE_INPUT, - VLIB_NODE_STATE_POLLING, - /* frame */ 0, - cpu_time_now); + if (is_main) + vec_foreach (n, nm->nodes_by_type[VLIB_NODE_TYPE_PRE_INPUT]) + cpu_time_now = dispatch_node (vm, n, + VLIB_NODE_TYPE_PRE_INPUT, + VLIB_NODE_STATE_POLLING, + /* frame */ 0, + cpu_time_now); /* Next process input nodes. */ vec_foreach (n, nm->nodes_by_type[VLIB_NODE_TYPE_INPUT]) -- 2.16.6