Em sex., 24 de jul. de 2026 às 13:40, Lucas Vargas Dias <[email protected]> escreveu:
> This series extends northd's incremental processing so that several more > Northbound changes are handled without falling back to a full recompute > of the en_lflow engine node. > > Today only plain VIF and remote logical switch ports are processed > incrementally; creating/deleting a logical switch, a logical router port, > or a router/virtual/localport switch port all force a full recompute. > This series closes those gaps, one port/datapath type at a time, and > fixes two latent bugs in the lflow and group-ecmp-route machinery that > only surface once datapaths and ports start being created/deleted > incrementally. > > The general approach in each patch is the same: enable the incremental > path only where the port/datapath is safe to handle self-contained, > regenerate the flows that live outside the port's own lflow_ref > explicitly, and fall back to a full recompute for the dependencies that > this path does not (yet) keep in sync (distributed gateway ports, > gateway routers, NAT, load balancers, static/dynamic routing, policies, > etc.). > > Patches > ------- Recheck-request: github-robot > 1. localport switch ports: enable the existing per-port incremental > path, which already owns every flow that differs from a VIF. > > 2. virtual switch ports: incremental create/delete, with recompute > fallbacks for distributed-NAT and dynamic-routing dependencies. > > 3. router-type switch ports: wire/tear down the peer relationship to > the LRP incrementally and regenerate sibling ARP-resolve and > ls_stateful flows; broad recompute fallback list. > > 4. logical router ports (non-gateway): mirror the router-switch-port > path on the LR side (tunnel key, connected routes, od->router_ips). > Also fixes unique_routes_remove() matching a route by prefix hash > only, which could delete the wrong connected route when several > share a prefix but differ in out_port (e.g. fe80::/64). > > 5. lflow-mgr: re-clone a lflow_ref_node's dp-group bitmap when its > length changed, instead of asserting it is constant. Adding/removing > a datapath changes the bitmap length and otherwise aborts northd. > > 6. logical switch datapaths: handle create/delete incrementally, > mirroring the logical-router datapath handling; move network-function > and multicast-flood flows to owners that are already processed > incrementally. > > 7. skip the redundant second rebuild of a created switch's ls_stateful > flows (already built in the LS-datapath handler). > > Patches 1-4 are self-contained per port type. Patches 5-7 belong > together: 5 unblocks incremental datapath churn, 6 uses it for switches, > and 7 removes the resulting duplicate work. > > Lucas Vargas Dias (7): > northd: Enable incremental processing for localport ports. > northd: Incrementally process virtual port creation and deletion. > northd: Incrementally process logical switch ports of type "router". > northd: Incrementally process logical router ports. > northd: Handle dp-group bitmap length change in lflow ref nodes. > northd: Incrementally process logical switch datapaths. > northd: Skip redundant ls_stateful reprocessing for created switches. > > northd/en-group-ecmp-route.c | 29 +- > northd/en-lflow.c | 39 +- > northd/en-ls-stateful.c | 7 + > northd/en-multicast.c | 20 + > northd/en-northd.c | 66 +- > northd/en-sync-sb.c | 2 + > northd/lflow-mgr.c | 12 +- > northd/northd.c | 1254 ++++++++++++++++++++++++++++++++-- > northd/northd.h | 33 +- > tests/ovn-northd.at | 414 ++++++++++- > 10 files changed, 1755 insertions(+), 121 deletions(-) > > -- > 2.43.0 > > -- _‘Esta mensagem é direcionada apenas para os endereços constantes no cabeçalho inicial. Se você não está listado nos endereços constantes no cabeçalho, pedimos-lhe que desconsidere completamente o conteúdo dessa mensagem e cuja cópia, encaminhamento e/ou execução das ações citadas estão imediatamente anuladas e proibidas’._ * **‘Apesar do Magazine Luiza tomar todas as precauções razoáveis para assegurar que nenhum vírus esteja presente nesse e-mail, a empresa não poderá aceitar a responsabilidade por quaisquer perdas ou danos causados por esse e-mail ou por seus anexos’.* _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
