[ovs-git] [ovn-org/ovn] 59af6f: ovn-northd: Fix the missing lflow issue in LS_OUT_...

numansiddique noreply at github.com
Tue Jul 7 14:43:33 UTC 2020

  Branch: refs/heads/master
  Home:   https://github.com/ovn-org/ovn
  Commit: 59af6f9048946e16813ad7ad4e453b85989670e4
  Author: Numan Siddique <numans at ovn.org>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M northd/ovn-northd.c
    M tests/ovn-northd.at

  Log Message:
  ovn-northd: Fix the missing lflow issue in LS_OUT_PRE_LB.

When load balancer(s) configured with VIPs are associated to a logical switch,
then ovn-northd adds the below logical flow so that the packets in the egress
switch pipeline enter the conntrack.

table=0 (ls_out_pre_lb      ), priority=100  , match=(ip), action=(reg0[[0]] = 1; next;)

ovn-northd maintains a local boolean variable 'vip_configured' in
build_pre_lb() and adds the above lflow if this is true at the end.
But this variable is overriden as -> vip_configured = !!lb->n_vips;
when it loops through every load balancer associated with the logical switch.

This is wrong and this patch fixes this issue.

A test case is addd to test this scenario and the test case fails without the
fix in this patch.

Fixes: bb9f2b9ce56c("ovn-northd: Consider load balancer active backends in router pipeline")

Reported-at: https://bugzilla.redhat.com/show_bug.cgi?id=1849162
Reported-by: Tim Rozet <trozet at redhat.com>
Acked-by: Dumitru Ceara <dceara at redhat.com>
Signed-off-by: Numan Siddique <numans at ovn.org>

More information about the git mailing list