This series focuses on improving incremental processing when dealing
with logical router policies. In particular, this series does the
following:

* en-northd no longer has to recompute when logical router policies are
  added, updated, or removed. This means en-northd's dependent nodes
  also do not need to recompute in this scenario.
* en-route-policies has added incremental handlers so that in-memory
  route policies can be rebuilt incrementally based on logical router,
  logical router policy, or BFD changes.
* en-lflow has an incremental handler added to it for logical router
  policy changes. Logical flows can be rebuilt incrementally when
  router policies change.

To facilitate, this, many tangential commits were also made that
improve functionality of logical router policies, and in some case other
areas of the code as well.
---
v1 -> v2:
  No fundamental series-wide changes. See individual patches for notes
  on version differences.


v2 -> v3:
  Since the patch series is so large, and the changes are so small, the
  changes are summarized here instead of on the individual patch files.

  The patch series now has 18 patches instead of 17. A new patch has been
  added at patch 2.

  Other changes:

  Patch 3 (formerly patch 2): There was a copy-paste error in the static
  route misconfigured port patch that is fixed in this version.

  Patch 12 (formerly patch 11): We now include <netinet/in.h> before
  including <arpa/inet.h> since this is required on FreeBSD. This was
  causing CI failures on GCC.
---

Mark Michelson (18):
  tests: Change static route on test.
  northd: Restore original ovn_port_find_in_datapath() parameters.
  northd: Search for ports within logical router.
  northd: Move policy recompute logic to en-route-policies.
  northd: Move route policy incremental node to its own file.
  route_policies: scope chain_ids to each logical router.
  northd: Determine route policy ECMP-ness using valid nexthops.
  en-route-policies: Only warn of "nexthop" use on reroute policies.
  en-route-policies: Check address families of nexthops earlier.
  en-route-policies: Simplify route policy lookup.
  vec: Add a vector_steal() function.
  en-route-policies: Cache output port name and source address.
  en-route-policies: Calculate ECMP group IDs when building policies.
  BFD: Remove the en_bfd incremental engine node.
  lflow: Use separate lflow_ref for routing policies.
  en-route-policies: Incrementally handle router changes.
  lflow: Incrementally handle router policy changes.
  en-route-policies: Get rid of en-northd change handler.

 NEWS                             |   5 +
 TODO.rst                         |   1 +
 lib/vec.c                        |  18 +
 lib/vec.h                        |   1 +
 northd/automake.mk               |   2 +
 northd/en-learned-route-sync.c   |   9 +-
 northd/en-lflow.c                |  36 +-
 northd/en-lflow.h                |   2 +
 northd/en-northd.c               | 168 ++-----
 northd/en-northd.h               |  12 -
 northd/en-route-policies.c       | 758 +++++++++++++++++++++++++++++
 northd/en-route-policies.h       | 112 +++++
 northd/inc-proc-northd.c         |  23 +-
 northd/northd.c                  | 794 +++++++++----------------------
 northd/northd.h                  |  77 ++-
 ovn-nb.xml                       |   3 +-
 tests/ovn-inc-proc-graph-dump.at |  12 +-
 tests/ovn-northd.at              | 483 +++++++++++++++++--
 tests/ovn.at                     |   4 +-
 tests/system-ovn.at              |   5 +-
 tests/test-vector.c              |  54 +++
 21 files changed, 1758 insertions(+), 821 deletions(-)
 create mode 100644 northd/en-route-policies.c
 create mode 100644 northd/en-route-policies.h

-- 
2.55.0

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to