When a port is added to a transit router using ovn-nbctl currently, it
is automatically removed as it looks like a transit router port in the
process of deletion. Change logic to only automatically remove ports
that had the interconn flag set.

Fixes: e5565a990ee5 ("ic: Add Transit Router port support.")
Signed-off-by: Mairtin O'Loingsigh <[email protected]>
---
 ic/ovn-ic.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/ic/ovn-ic.c b/ic/ovn-ic.c
index 2a7dfe405..0ef82f3a3 100644
--- a/ic/ovn-ic.c
+++ b/ic/ovn-ic.c
@@ -1224,7 +1224,9 @@ port_binding_run(struct ic_context *ctx)
 
         for (size_t i = 0; i < lr->n_ports; i++) {
             const struct nbrec_logical_router_port *lrp = lr->ports[i];
-            shash_add(&nb_ports, lrp->name, lrp);
+            if (smap_get_def(&lrp->options, "interconn-tr", NULL)) {
+                shash_add(&nb_ports, lrp->name, lrp);
+            }
         }
 
         isb_pb_key = icsbrec_port_binding_index_init_row(
-- 
2.51.1

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

Reply via email to