On Fri, Feb 07, 2025 at 08:32:28PM +0100, Dumitru Ceara wrote: > Hi Felix, Frode, Martin, > > On 2/6/25 3:18 PM, Felix Huettner via dev wrote: > > Hi everyone, > > > > this patchset is the combination of the northd and the ovn-controller part > > of > > the OVN Fabric integration series > > https://mail.openvswitch.org/pipermail/ovs-dev/2024-November/418554.html. > > > > This version contains the addressed reviews of the northd patchset > > https://patchwork.ozlabs.org/project/ovn/list/?series=441243&state=* and > > the ovn-controller patchset > > https://patchwork.ozlabs.org/project/ovn/list/?series=442173&state=* . > > > > By the end of the series northd and ovn-controller in combination can > > announce > > routes from the connected and static routes to a linux vrf. > > We can also learn routes from a linux vrf and install them in the LR > > routing table. > > > > In contrast to previous patchesets this series has no prerequisites > > anymore as all where merged in the mean time. > > > > I ran a few 500 node ovn-heater tests (cluster-density and > density-heavy) with this patchset applied and the control plane > performance in the default case (dynamic routing disabled) is comparable > to the last runs we did with vanilla code from the main branch - that's > good. > > For the feature itself I think it's mostly ready. There are a few small > leftover nits that should be fixed, I tried to list them in replies to > individual patches. I could take care of the small issues myself when > applying the series to the main branch but here are two patches that > need discussion and/or a v8: > > - [PATCH ovn v7 02/17] northd: Add filtering which routes to advertise. > - I had a suggestion to avoid some of the boilerplate > - [PATCH ovn v7 13/17] controller: Support learning routes per iface. > - I think we should improve the way we parse the contents of the > new option and we should avoid reparsing it for each and every > datapath > - a few more comments > - so this probably needs a new revision
Hi Dumitru, thanks a lot for all the reviews. I have mostly finished v8. Especially the "routes per iface" change got a lot of rework. I'll send out v8 on the mailinglist tomorrow morning. Thanks a lot, Felix > > Regards, > Dumitru > > > Since v6 the changes where: > > * dynamic-routing-connected-as-host-routes is now part of > > dynamic-routing-redistribute > > * Support lrp<->lrp peers in connected-as-host routes > > * Rework the interface filter > > * Other review comments > > > > Felix Huettner (14): > > northd: Sync Advertised_Route to sb. > > northd: Add filtering which routes to advertise. > > northd: Handle learned routes. > > northd: Remove learned routes if lrp is removed. > > northd: Allow announcing individual host routes. > > northd: Sync routing data to pb. > > controller: Update OVS submodule. > > controller: Introduce route node. > > controller: Support learning routes. > > controller: Support learning routes per iface. > > controller: Prioritize host routes. > > controller: Watch for route changes. > > controller: Cleanup routes on stop. > > controller: Support user defined vrf names. > > > > Frode Nordahl (3): > > ci: Manage host/system level dependencies. > > controller: Introduce route-exchange-netlink. > > controller: Announce routes via route-exchange. > > > > .github/workflows/test.yml | 6 + > > NEWS | 24 + > > TODO.rst | 17 + > > configure.ac | 2 + > > controller/automake.mk | 18 +- > > controller/local_data.c | 7 +- > > controller/local_data.h | 1 + > > controller/lport.c | 44 +- > > controller/lport.h | 4 + > > controller/ovn-controller.c | 401 ++++++++++++++++- > > controller/route-exchange-netlink.c | 323 ++++++++++++++ > > controller/route-exchange-netlink.h | 62 +++ > > controller/route-exchange-stub.c | 37 ++ > > controller/route-exchange.c | 310 +++++++++++++ > > controller/route-exchange.h | 40 ++ > > controller/route-table-notify-stub.c | 56 +++ > > controller/route-table-notify.c | 226 ++++++++++ > > controller/route-table-notify.h | 44 ++ > > controller/route.c | 274 ++++++++++++ > > controller/route.h | 87 ++++ > > ic/ovn-ic.c | 21 - > > lib/ovn-util.c | 32 ++ > > lib/ovn-util.h | 3 + > > lib/stopwatch-names.h | 2 + > > m4/ovn.m4 | 25 ++ > > northd/automake.mk | 4 + > > northd/en-advertised-route-sync.c | 416 +++++++++++++++++ > > northd/en-advertised-route-sync.h | 39 ++ > > northd/en-ecmp-nexthop.c | 16 +- > > northd/en-learned-route-sync.c | 213 +++++++++ > > northd/en-learned-route-sync.h | 32 ++ > > northd/en-lflow.c | 5 +- > > northd/en-northd-output.c | 9 + > > northd/en-northd-output.h | 2 + > > northd/inc-proc-northd.c | 27 +- > > northd/northd.c | 436 +++++++++++------- > > northd/northd.h | 85 +++- > > northd/ovn-northd.c | 6 + > > ovn-nb.xml | 222 ++++++++++ > > ovs | 2 +- > > tests/automake.mk | 6 + > > tests/ovn-northd.at | 638 +++++++++++++++++++++++++-- > > tests/ovs-macros.at | 10 + > > tests/system-common-macros.at | 27 ++ > > tests/system-ovn.at | 622 ++++++++++++++++++++++++++ > > utilities/containers/prepare.sh | 2 +- > > 46 files changed, 4660 insertions(+), 225 deletions(-) > > create mode 100644 controller/route-exchange-netlink.c > > create mode 100644 controller/route-exchange-netlink.h > > create mode 100644 controller/route-exchange-stub.c > > create mode 100644 controller/route-exchange.c > > create mode 100644 controller/route-exchange.h > > create mode 100644 controller/route-table-notify-stub.c > > create mode 100644 controller/route-table-notify.c > > create mode 100644 controller/route-table-notify.h > > create mode 100644 controller/route.c > > create mode 100644 controller/route.h > > create mode 100644 northd/en-advertised-route-sync.c > > create mode 100644 northd/en-advertised-route-sync.h > > create mode 100644 northd/en-learned-route-sync.c > > create mode 100644 northd/en-learned-route-sync.h > > > > > > base-commit: a979db00b2bb6a708bce99eb94ce20beb8998a8d > _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
