On Fri, Jun 2, 2023 at 12:12 AM Han Zhou <[email protected]> wrote: > > Maintain a set of lsp names that are referenced in the column > "ip_port_mappings" of load_balancer records (used for health check > purpose), which will be used for lsp incremental processing. > > Signed-off-by: Han Zhou <[email protected]> > Reviewed-by: Ales Musil <[email protected]>
Thanks for adding the lsp I-P in northd. LGTM. For this patch and for the rest of the patches (P7-P14) Acked-by: Numan Siddique <[email protected]> Numan > --- > northd/northd.c | 21 ++++++++++++++------- > northd/northd.h | 1 + > 2 files changed, 15 insertions(+), 7 deletions(-) > > diff --git a/northd/northd.c b/northd/northd.c > index 93f126aa32b4..d79f075681d9 100644 > --- a/northd/northd.c > +++ b/northd/northd.c > @@ -3770,7 +3770,8 @@ create_or_get_service_mon(struct ovsdb_idl_txn > *ovnsb_txn, > > static void > ovn_lb_svc_create(struct ovsdb_idl_txn *ovnsb_txn, struct ovn_northd_lb *lb, > - struct hmap *monitor_map, struct hmap *ls_ports) > + struct hmap *monitor_map, struct hmap *ls_ports, > + struct sset *svc_monitor_lsps) > { > if (lb->template) { > return; > @@ -3801,6 +3802,7 @@ ovn_lb_svc_create(struct ovsdb_idl_txn *ovnsb_txn, > struct ovn_northd_lb *lb, > if (p) { > *p = 0; > p++; > + sset_add(svc_monitor_lsps, port_name); > op = ovn_port_find(ls_ports, port_name); > struct sockaddr_storage svc_mon_src_addr; > if (!inet_parse_address(p, &svc_mon_src_addr)) { > @@ -4082,8 +4084,7 @@ static void > build_lb_svcs( > struct ovsdb_idl_txn *ovnsb_txn, > const struct sbrec_service_monitor_table *sbrec_service_monitor_table, > - struct hmap *ls_ports, > - struct hmap *lbs) > + struct hmap *ls_ports, struct hmap *lbs, struct sset *svc_monitor_lsps) > { > struct hmap monitor_map = HMAP_INITIALIZER(&monitor_map); > > @@ -4101,7 +4102,8 @@ build_lb_svcs( > > struct ovn_northd_lb *lb; > HMAP_FOR_EACH (lb, hmap_node, lbs) { > - ovn_lb_svc_create(ovnsb_txn, lb, &monitor_map, ls_ports); > + ovn_lb_svc_create(ovnsb_txn, lb, &monitor_map, ls_ports, > + svc_monitor_lsps); > } > > struct service_monitor_info *mon_info; > @@ -4280,11 +4282,12 @@ build_lb_port_related_data( > struct ovsdb_idl_txn *ovnsb_txn, > const struct sbrec_service_monitor_table *sbrec_service_monitor_table, > struct ovn_datapaths *lr_datapaths, struct hmap *ls_ports, > - struct hmap *lbs, struct hmap *lb_groups) > + struct hmap *lbs, struct hmap *lb_groups, struct sset *svc_monitor_lsps) > { > build_lrouter_lbs_check(lr_datapaths); > build_lrouter_lbs_reachable_ips(lr_datapaths, lbs, lb_groups); > - build_lb_svcs(ovnsb_txn, sbrec_service_monitor_table, ls_ports, lbs); > + build_lb_svcs(ovnsb_txn, sbrec_service_monitor_table, ls_ports, lbs, > + svc_monitor_lsps); > build_lswitch_lbs_from_lrouter(lr_datapaths, lbs, lb_groups); > } > > @@ -16506,6 +16509,7 @@ northd_init(struct northd_data *data) > .ct_lb_related = true, > }; > data->ovn_internal_version_changed = false; > + sset_init(&data->svc_monitor_lsps); > } > > void > @@ -16549,6 +16553,8 @@ northd_destroy(struct northd_data *data) > &data->ls_ports, &data->lr_ports, > &data->lr_list); > destroy_debug_config(); > + > + sset_destroy(&data->svc_monitor_lsps); > } > > static void > @@ -16660,7 +16666,8 @@ ovnnb_db_run(struct northd_input *input_data, > build_lb_port_related_data(ovnsb_txn, > input_data->sbrec_service_monitor_table, > &data->lr_datapaths, &data->ls_ports, > - &data->lbs, &data->lb_groups); > + &data->lbs, &data->lb_groups, > + &data->svc_monitor_lsps); > build_lb_count_dps(&data->lbs, > ods_size(&data->ls_datapaths), > ods_size(&data->lr_datapaths)); > diff --git a/northd/northd.h b/northd/northd.h > index edccb0ca89c0..b26828bb7111 100644 > --- a/northd/northd.h > +++ b/northd/northd.h > @@ -97,6 +97,7 @@ struct northd_data { > struct ovs_list lr_list; > bool ovn_internal_version_changed; > struct chassis_features features; > + struct sset svc_monitor_lsps; > }; > > struct lflow_data { > -- > 2.30.2 > > _______________________________________________ > 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
