[ovs-dev] [PATCH ovn 1/2] binding: Don't reset expected seqno for interfaces already being installed.
Numan Siddique
numans at ovn.org
Wed Apr 28 10:39:31 UTC 2021
On Fri, Apr 23, 2021 at 10:18 AM Dumitru Ceara <dceara at redhat.com> wrote:
>
> If an interface is already in 'binding_iface_seqno_map' then that means
> that the openflow modifications needed for its functionality have
> already been sent to ovs-vswitchd and we're waiting for an openflow
> barrier reply. In such cases, don't reset the expected seqno because
> this would delay the notification unnecessarily.
>
> This scenario can be hit at scale, if Southbound DB sends a port
> related update before processing the transaction in which ovn-controller
> claimed the logical port.
>
> Reported-at: https://bugzilla.redhat.com/1946420
> Fixes: 4d3cb42b076b ("binding: Set Logical_Switch_Port.up when all OVS flows are installed.")
> Signed-off-by: Dumitru Ceara <dceara at redhat.com>
Thanks for fixing this issue.
I applied this patch to master and branch-21.03
Numan
> ---
> controller/binding.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/controller/binding.c b/controller/binding.c
> index 514f5f33f..451f00e34 100644
> --- a/controller/binding.c
> +++ b/controller/binding.c
> @@ -2602,7 +2602,8 @@ binding_seqno_run(struct local_binding_data *lbinding_data)
> * Port_Binding 'up' field and the OVS Interface 'external-id'.
> */
> struct binding_lport *b_lport = local_binding_get_primary_lport(lb);
> - if (lb && b_lport && lb->iface) {
> + if (lb && b_lport && lb->iface
> + && !simap_contains(&binding_iface_seqno_map, lb->name)) {
> new_ifaces = true;
>
> if (smap_get(&lb->iface->external_ids, OVN_INSTALLED_EXT_ID)) {
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
More information about the dev
mailing list