When a l3 gateway port is created on a chassis, the corresponding
datapath is not added to local datapths. This results in patch
ports not getting created between local network and br-int

Signed-off-by: Chandra Sekhar Vejendla <csvej...@us.ibm.com>
---
 ovn/controller/binding.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/ovn/controller/binding.c b/ovn/controller/binding.c
index 4704226..1d5bd32 100644
--- a/ovn/controller/binding.c
+++ b/ovn/controller/binding.c
@@ -253,6 +253,14 @@ consider_local_datapath(struct controller_ctx *ctx, struct 
shash *lports,
                       binding_rec->logical_port);
             sbrec_port_binding_set_chassis(binding_rec, NULL);
         }
+    } else if (!strcmp(binding_rec->type, "gateway")) {
+        const char *chassis = smap_get(&binding_rec->options,
+                                       "gateway-chassis");
+        if (!strcmp(chassis, chassis_rec->name) && ctx->ovnsb_idl_txn) {
+            sset_add(&all_lports, binding_rec->logical_port);
+            add_local_datapath(local_datapaths, binding_rec,
+                               &binding_rec->header_.uuid);
+        }
     } else if (!binding_rec->chassis
                && !strcmp(binding_rec->type, "localnet")) {
         /* Localnet ports will never be bound to a chassis, but we want
-- 
2.6.1

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to