With the typo corrected, Acked-by: Mark Michelson <[email protected]>
On 2/7/25 02:11, Ales Musil wrote:
On Fri, Feb 7, 2025 at 8:09 AM Ales Musil <[email protected]> wrote:The negotiation for Geneve metadata TLV and the register allocation might take a while after controller start, if we attempt to create flood flows in that period we might end up crashing as the metadata match helper asserts if the register is valid: lib/tun-metadata.c:286: assertion idx < TUN_METADATA_NUM_OPTS failed in metadata_loc_from_match() Fixes: 7c3f7f415f1d ("northd, controller: Flood ARP and NA packet on transit router.") Signed-off-by: Ales Musil <[email protected]> --- controller/physical.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/controller/physical.c b/controller/physical.c index 5d088302a..0d4f99ff8 100644 --- a/controller/physical.c +++ b/controller/physical.c @@ -2475,6 +2475,11 @@ physical_eval_remote_chassis_flows(const struct physical_ctx *ctx, continue; } + /* Do not create flows for Geneve if the TLV negotiation finished. */I left a typo there, it should be: "Do not create flows for Geneve if the TLV negotiation is not finished".+ if (tun->type == GENEVE && !ctx->mff_ovn_geneve) { + continue; + } + if (!(prev && prev->type == tun->type)) { put_remote_chassis_flood_encap(egress_ofpacts, tun->type, ctx->mff_ovn_geneve); -- 2.48.1_______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
_______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
