Sorry, I acked v2 without realizing that a v3 was requested. That being said,

Acked-by: Mark Michelson <[email protected]>

On Thu, Mar 19, 2026 at 9:25 AM Dumitru Ceara <[email protected]> wrote:
>
> Since the commit cited in the "Fixes" below ovn-controller doesn't
> update the in-memory configuration of the service monitors it runs when
> the SB changes Service_Monitor fields that are not used as keys when
> looking up the structures.
>
> This commits addresses it by moving the fields into the common
> insert-or-update code path.
>
> Fixes: a0a5dd8ce56f ("controller: Store src_mac, src_ip in svc_monitor 
> struct.")
> Signed-off-by: Dumitru Ceara <[email protected]>
> ---
> V3:
> - Addressed Ales' comment:
>   - split this fix out to a separate commit
> ---
>  controller/pinctrl.c | 11 ++++++-----
>  1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/controller/pinctrl.c b/controller/pinctrl.c
> index 35c42942f3..18b7b0df2e 100644
> --- a/controller/pinctrl.c
> +++ b/controller/pinctrl.c
> @@ -7197,16 +7197,13 @@ sync_svc_monitors(struct ovsdb_idl_txn *ovnsb_idl_txn,
>          if (!svc_mon) {
>              svc_mon = xmalloc(sizeof *svc_mon);
>              svc_mon->dp_key = dp_key;
> -            svc_mon->input_port_key = input_port_key;
>              svc_mon->port_key = port_key;
>              svc_mon->proto_port = sb_svc_mon->port;
>              svc_mon->ip = ip_addr;
> -            svc_mon->src_ip = ip_addr_src;
>              svc_mon->is_ip6 = !is_ipv4;
>              svc_mon->state = SVC_MON_S_INIT;
>              svc_mon->status = SVC_MON_ST_UNKNOWN;
>              svc_mon->protocol = protocol;
> -            svc_mon->type = mon_type;
>
>              smap_init(&svc_mon->options);
>              svc_mon->interval =
> @@ -7220,15 +7217,19 @@ sync_svc_monitors(struct ovsdb_idl_txn *ovnsb_idl_txn,
>              svc_mon->n_success = 0;
>              svc_mon->n_failures = 0;
>
> -            eth_addr_from_string(sb_svc_mon->src_mac, &svc_mon->src_mac);
> -
>              hmap_insert(&svc_monitors_map, &svc_mon->hmap_node, hash);
>              ovs_list_push_back(&svc_monitors, &svc_mon->list_node);
>              changed = true;
>          }
>
>          svc_mon->sb_svc_mon = sb_svc_mon;
> +
> +        svc_mon->input_port_key = input_port_key;
> +        svc_mon->src_ip = ip_addr_src;
> +        svc_mon->type = mon_type;
> +        eth_addr_from_string(sb_svc_mon->src_mac, &svc_mon->src_mac);
>          svc_mon->ea = ea;
> +
>          if (!smap_equal(&svc_mon->options, &sb_svc_mon->options)) {
>              smap_destroy(&svc_mon->options);
>              smap_clone(&svc_mon->options, &sb_svc_mon->options);
> --
> 2.53.0
>

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

Reply via email to