In one place, ovn-northd was hashing Logical_Switch or Logical_Router UUIDs for ovn_lflow, and in another place it was hashing Datapath_Binding UUIDs. This caused problems. This commit changes ovn-northd to always hash the Datapath_Binding UUID.
Jacob Sitnicki reported the following performance improvement for a similar fix: Children Self Command Shared Object Symbol before: 76.19% 0.01% ovn-northd ovn-northd [.] ovnnb_db_run 11.04% 0.43% ovn-northd ovn-northd [.] ovn_lflow_find after: 75.16% 0.05% ovn-northd ovn-northd [.] ovnnb_db_run 2.49% 0.17% ovn-northd ovn-northd [.] ovn_lflow_find Fixes: 8bf332225d4a ("ovn-northd: Reduce amount of flow hashing.") Reported-by: Jakub Sitnicki <j...@redhat.com> Signed-off-by: Ben Pfaff <b...@ovn.org> --- ovn/northd/ovn-northd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovn/northd/ovn-northd.c b/ovn/northd/ovn-northd.c index 5d764f6e9404..dcaa77dbf939 100644 --- a/ovn/northd/ovn-northd.c +++ b/ovn/northd/ovn-northd.c @@ -2278,7 +2278,7 @@ struct ovn_lflow { static size_t ovn_lflow_hash(const struct ovn_lflow *lflow) { - return ovn_logical_flow_hash(&lflow->od->key, + return ovn_logical_flow_hash(&lflow->od->sb->header_.uuid, ovn_stage_get_table(lflow->stage), ovn_stage_get_pipeline_name(lflow->stage), lflow->priority, lflow->match, -- 2.16.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev