[ovs-git] [openvswitch/ovs] 6dc717: ovn: Recirculate packets after a unSNAT.

GitHub noreply at github.com
Fri Apr 13 21:22:43 UTC 2018

  Branch: refs/heads/branch-2.9
  Home:   https://github.com/openvswitch/ovs
  Commit: 6dc717156fcab0af68ebdcfa7bb908e90478a940
  Author: Gurucharan Shetty <guru at ovn.org>
  Date:   2018-04-13 (Fri, 13 Apr 2018)

  Changed paths:
    M include/ovn/actions.h
    M ovn/controller/lflow.c
    M ovn/lib/actions.c
    M ovn/northd/ovn-northd.8.xml
    M ovn/northd/ovn-northd.c
    M ovn/ovn-sb.xml
    M tests/system-ovn.at

  Log Message:
  ovn: Recirculate packets after a unSNAT.

commit f6fabcc6245 (ofproto-dpif: Mark packets as "untracked"
after call to ct().) changed the behavior after a call to ct().
The +trk bit would automatically be unset if packet is sent to
ct() and not forked.  This caused a bug in the OVN gateway
pipeline when there is SNAT rule as well as load-balancing rule.

In the OVN gateway pipeline for the gateway router, we had an
optimization where the packets sent to unSNAT need not go through
a recirculation. But since doing this now means that the +trk bit
gets unset, the DNAT rules for load-balancing a new packet in the next
table won't get hit.

This commit removes the optimization for unSNAT packets so that
there is always a recirculation.

Signed-off-by: Gurucharan Shetty <guru at ovn.org>

More information about the git mailing list