On Mon, Jun 24, 2019 at 3:59 AM <[email protected]> wrote: > > From: Numan Siddique <[email protected]> > > engine_node 'en_sb_port_binding' is added as input to engine nodes > - 'en_runtime_data' with the handler runtime_data_sb_port_binding_handler() and > - 'en_flow_output' with the handler flow_output_sb_port_binding_handler() nodes. > > Also 'en_runtime_data' is input to node 'en_flow_output'. > > The function 'engine_run()' returns immediately if the run_id param is same as > the engine_node->run_id. Because of which the handler 'flow_output_sb_port_binding_handler()' > is never called. > > This patch removes this check in engine_run(). > > Signed-off-by: Numan Siddique <[email protected]> > --- > ovn/lib/inc-proc-eng.c | 3 --- > 1 file changed, 3 deletions(-) > > diff --git a/ovn/lib/inc-proc-eng.c b/ovn/lib/inc-proc-eng.c > index 1ddea1a85..10ebd047b 100644 > --- a/ovn/lib/inc-proc-eng.c > +++ b/ovn/lib/inc-proc-eng.c > @@ -124,9 +124,6 @@ engine_ovsdb_node_add_index(struct engine_node *node, const char *name, > void > engine_run(struct engine_node *node, uint64_t run_id) > { > - if (node->run_id == run_id) { > - return; > - } > node->run_id = run_id; > > node->changed = false; > -- > 2.21.0 > > _______________________________________________ > dev mailing list > [email protected] > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
I think this change causes problems. engine_run() is called recursively when traversing the DAG. The check for run_id is just to make sure each node is visited once only. When a node is visited, it will process each of its input, and none of the input change handlers will be missed (unless there is some input triggers recompute of this node already and the rest of inputs are omitted). You didn't see 'flow_output_sb_port_binding_handler()' called maybe because in en_runtime_data it is already triggering recompute? Please let me know if I missed anything. _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
