On Wed, Mar 20, 2024 at 12:48 PM Mark Michelson <[email protected]> wrote: > > Thanks Ales, looks good to me. > > Acked-by: Mark Michelson <[email protected]> >
Thanks Ales and Mark. I applied to main and backported down to branch-23.06. Han > On 3/19/24 11:57, Ales Musil wrote: > > The memory usage would be increased for size of sb_addrset_ref > > struct, but decreased for the size of the struct + the name. > > That would slowly lead to underflows in some cases. > > > > Reported-at: https://issues.redhat.com/browse/FDP-507 > > Signed-off-by: Ales Musil <[email protected]> > > --- > > controller/ofctrl.c | 10 ++++++++-- > > 1 file changed, 8 insertions(+), 2 deletions(-) > > > > diff --git a/controller/ofctrl.c b/controller/ofctrl.c > > index f14cd79a8..0ef3b8366 100644 > > --- a/controller/ofctrl.c > > +++ b/controller/ofctrl.c > > @@ -1112,6 +1112,12 @@ sb_to_flow_size(const struct sb_to_flow *stf) > > return sizeof *stf; > > } > > > > +static size_t > > +sb_addrset_ref_size(const struct sb_addrset_ref *sar) > > +{ > > + return sizeof *sar + strlen(sar->name) + 1; > > +} > > + > > static struct sb_to_flow * > > sb_to_flow_find(struct hmap *uuid_flow_table, const struct uuid *sb_uuid) > > { > > @@ -1181,8 +1187,8 @@ link_flow_to_sb(struct ovn_desired_flow_table *flow_table, > > } > > if (!found) { > > sar = xmalloc(sizeof *sar); > > - mem_stats.sb_flow_ref_usage += sizeof *sar; > > sar->name = xstrdup(as_info->name); > > + mem_stats.sb_flow_ref_usage += sb_addrset_ref_size(sar); > > hmap_init(&sar->as_ip_to_flow_map); > > ovs_list_insert(&stf->addrsets, &sar->list_node); > > } > > @@ -1568,7 +1574,7 @@ remove_flows_from_sb_to_flow(struct ovn_desired_flow_table *flow_table, > > free(itfn); > > } > > hmap_destroy(&sar->as_ip_to_flow_map); > > - mem_stats.sb_flow_ref_usage -= (sizeof *sar + strlen(sar->name) + 1); > > + mem_stats.sb_flow_ref_usage -= sb_addrset_ref_size(sar); > > free(sar->name); > > free(sar); > > } > > _______________________________________________ > 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
