[ovs-git] [openvswitch/ovs] bda5a0: ovn-controller: Move local_datapaths calculation.

GitHub noreply at github.com
Wed Feb 3 14:46:26 UTC 2016


  Branch: refs/heads/master
  Home:   https://github.com/openvswitch/ovs
  Commit: bda5a056ba652c4e399412a0853313af46b35379
      https://github.com/openvswitch/ovs/commit/bda5a056ba652c4e399412a0853313af46b35379
  Author: Russell Bryant <russell at ovn.org>
  Date:   2016-02-03 (Wed, 03 Feb 2016)

  Changed paths:
    M ovn/controller/binding.c
    M ovn/controller/binding.h
    M ovn/controller/ovn-controller.c
    M ovn/controller/physical.c
    M ovn/controller/physical.h

  Log Message:
  -----------
  ovn-controller: Move local_datapaths calculation.

Before this patch, physical.c build up the set of local datapaths for
its own use.  I'd like to use it in another module in a later patch, so
pull it out of physical.  It's now populated by the bindings module,
since that seems like a more appropriate place to do it, and it's also
done much earlier in the main loop, making it easier to re-use.

Signed-off-by: Russell Bryant <russell at ovn.org>
Acked-by: Han Zhou <zhouhan at gmail.com>
Acked-by: Ben Pfaff <blp at ovn.org>


  Commit: e90aeb578ffc0cbae377b6251c2d956de98dacad
      https://github.com/openvswitch/ovs/commit/e90aeb578ffc0cbae377b6251c2d956de98dacad
  Author: Russell Bryant <russell at ovn.org>
  Date:   2016-02-03 (Wed, 03 Feb 2016)

  Changed paths:
    M ovn/controller/ovn-controller.8.xml
    M ovn/controller/ovn-controller.c
    M ovn/controller/patch.c
    M ovn/controller/patch.h
    M ovn/controller/physical.c
    M ovn/controller/physical.h
    M ovn/ovn-architecture.7.xml
    M tests/ovn-controller.at
    M tests/ovn.at

  Log Message:
  -----------
  ovn: Fix localnet ports on the same chassis.

Multiple logical ports on the same chassis that were connected to the
same physical network via localnet ports were not able to send packets
to each other.  This was because ovn-controller created a single patch
port between br-int and the physical network access bridge and used it
for all localnet ports.

The fix implemented here is to create a separate patch port for every
logical port of type=localnet.  An optimization is included where these
ports are only created if the localnet port is on a logical switch with
another logical port with an associated local VIF.

A nice side effect of this fix is that the code in physical.c got a lot
simpler, as localnet ports are now handled mostly like local VIFs.

Fixes: c02819293d52 ("ovn: Add "localnet" logical port type.")
Reported-by: Han Zhou <zhouhan at gmail.com>
Reported-at: http://openvswitch.org/pipermail/dev/2016-January/064413.html
Signed-off-by: Russell Bryant <russell at ovn.org>
Tested-by: Kyle Mestery <mestery at mestery.com
Acked-By: Kyle Mestery <mestery at mestery.com>
Tested-by: Han Zhou <zhouhan at gmail.com>
Tested-by: Michael Arnaldi <michael.arnaldi at mymoneyex.com>
Acked-by: Ben Pfaff <blp at ovn.org>


  Commit: 5a4bee8a022ff99ff4efe18c74412d41926146fa
      https://github.com/openvswitch/ovs/commit/5a4bee8a022ff99ff4efe18c74412d41926146fa
  Author: Russell Bryant <russell at ovn.org>
  Date:   2016-02-03 (Wed, 03 Feb 2016)

  Changed paths:
    M ovn/controller/binding.c

  Log Message:
  -----------
  ovn-controller: Allocate ct zones for localnet ports.

Previously, all ct() actions applied to localnet ports used the default
conntrack zone.  We should allocate a ct zone ID for all localnet ports
just like we do for all local VIFs so that none of our connection
tracking interferes with any base system connection tracking in the
default zone.

Signed-off-by: Russell Bryant <russell at ovn.org>
Acked-by: Han Zhou <zhouhan at gmail.com>
Acked-by: Ben Pfaff <blp at ovn.org>


Compare: https://github.com/openvswitch/ovs/compare/d916785ce98c...5a4bee8a022f


More information about the git mailing list