On Nov 04, Felix Huettner via dev wrote: > We previous relied on the fact the the southbound Port_Binding gets the > same name as the Northbound port. However in all of the cases we use > this we already know the name the southbound port will have. Therefor we > just use this name, instead of getting it from northbound. > > This is a prerequisite for later patches that use derived router ports. > > Signed-off-by: Felix Huettner <felix.huettner@stackit.cloud>
Acked-by: Lorenzo Bianconi <lorenzo.bianc...@redhat.com> > --- > northd/northd.c | 18 +++++++++++------- > 1 file changed, 11 insertions(+), 7 deletions(-) > > diff --git a/northd/northd.c b/northd/northd.c > index 32a7c8509..fa3a8a882 100644 > --- a/northd/northd.c > +++ b/northd/northd.c > @@ -3305,11 +3305,18 @@ ovn_port_update_sbrec(struct ovsdb_idl_txn *ovnsb_txn, > if (router_port || chassis || is_cr_port(op)) { > struct smap new; > smap_init(&new); > - > if (is_cr_port(op)) { > smap_add(&new, "distributed-port", op->nbsp->name); > } else if (router_port) { > - smap_add(&new, "peer", router_port); > + /* op->peer can be null if the peer is disabed. In this > + * case we fall back to the router_port string which > + * might be wrong, but since the port does not exist that > + * does not matter. */ > + if (op->peer) { > + smap_add(&new, "peer", op->peer->key); > + } else { > + smap_add(&new, "peer", router_port); > + } > } > if (chassis) { > smap_add(&new, "l3gateway-chassis", chassis); > @@ -4025,7 +4032,7 @@ sync_pb_for_lrp(struct ovn_port *op, > lr_stateful_table_find_by_index(lr_stateful_table, > op->od->index); > ovs_assert(lr_stateful_rec); > > - smap_add(&new, "distributed-port", op->nbrp->name); > + smap_add(&new, "distributed-port", op->primary_port->key); > > bool always_redirect = > !lr_stateful_rec->lrnat_rec->has_distributed_nat && > @@ -4050,10 +4057,7 @@ sync_pb_for_lrp(struct ovn_port *op, > smap_add(&new, "peer", op->peer->key); > if (op->nbrp->ha_chassis_group || > op->nbrp->n_gateway_chassis) { > - char *redirect_name = > - ovn_chassis_redirect_name(op->nbrp->name); > - smap_add(&new, "chassis-redirect-port", redirect_name); > - free(redirect_name); > + smap_add(&new, "chassis-redirect-port", op->cr_port->key); > } > } > if (chassis_name) { > -- > 2.47.0 > > > _______________________________________________ > dev mailing list > d...@openvswitch.org > https://mail.openvswitch.org/mailman/listinfo/ovs-dev >
_______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev