[ovs-build] Passed: ovsrobot/ovn#995 (series_201891 - c996886)
builds at travis-ci.com
Tue Sep 15 19:20:53 UTC 2020
Build Update for ovsrobot/ovn
Duration: 21 mins and 50 secs
Commit: c996886 (series_201891)
Author: Han Zhou
Message: lflow.c: Avoid adding redundant resource refs for port-bindings.
When a lport is referenced by a logical flow where port-binding refs
needs to be added, currently it can add the same reference pair multiple
times in below situations (introduced in commit ade4e77):
1) In add_matches_to_flow_table(), different matches from same lflow
can have same inport/outport.
2) In is_chassis_resident_cb(), a lflow can have multiple is_chassis_resident
check for same lport (although not very common), and at the same time
the lport used in is_chassis_resident can overlap with the inport/
outport of the same flow.
Now because of the redundant entries added, it results in unexpected behavior
such as same lflow being processed multiple times as a waste of processing.
More severely, after commit 580aea72e it can result in orphaned pointer leading
to crash, as reported in .
This patch fixes the problems by checking existance of same reference before
adding in lflow_resource_add(). To do this check efficiently, hmap is used to
replace the list struct for the resource-to-lflow index.
Reported-by: Dumitru Ceara <dceara at redhat.com>
Fixes: ade4e779d3fb ("ovn-controller: Use the tracked runtime data changes for flow calculation.")
Fixes: 580aea72e26f ("ovn-controller: Fix conjunction handling with incremental processing.")
Signed-off-by: Han Zhou <hzhou at ovn.org>
Signed-off-by: 0-day Robot <robot at bytheb.org>
View the changeset: https://github.com/ovsrobot/ovn/commit/c996886faf54
View the full build log and details: https://travis-ci.com/github/ovsrobot/ovn/builds/184448441?utm_medium=notification&utm_source=email
You can unsubscribe from build emails from the ovsrobot/ovn repository going to https://travis-ci.com/account/preferences/unsubscribe?repository=9136199&utm_medium=notification&utm_source=email.
Or unsubscribe from *all* email updating your settings at https://travis-ci.com/account/preferences/unsubscribe?utm_medium=notification&utm_source=email.
Or configure specific recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the build