On 3/1/25 2:56 PM, Frank Wagner wrote: > On Windows to current definitions of thread_local are not working. > > Signed-off-by: Frank Wagner <frank.wag...@dbosoft.eu> > > ---
Hi Frank, Thanks for the patch! > northd/lflow-mgr.c | 2 ++ > northd/northd.c | 2 ++ > northd/northd.h | 4 ++++ > 3 files changed, 8 insertions(+) > > diff --git a/northd/lflow-mgr.c b/northd/lflow-mgr.c > index 88ce7ce56..d29d5e7b4 100644 > --- a/northd/lflow-mgr.c > +++ b/northd/lflow-mgr.c > @@ -98,7 +98,9 @@ static bool sync_lflow_to_sb(struct ovn_lflow *, > /* TODO: Move the parallization logic to this module to avoid accessing > * and modifying in both northd.c and lflow-mgr.c. */ > extern int parallelization_state; > +#ifndef _WIN32 > extern thread_local size_t thread_lflow_counter; > +#endif > > struct dp_refcnt; > static struct dp_refcnt *dp_refcnt_find(struct hmap *dp_refcnts_map, > diff --git a/northd/northd.c b/northd/northd.c > index a1fcc64a5..a378fbea5 100644 > --- a/northd/northd.c > +++ b/northd/northd.c > @@ -5476,7 +5476,9 @@ int parallelization_state = STATE_NULL; > * threads are collected to fix the lflow hmap's size (by the function > * fix_flow_map_size()). > * */ > +#ifndef _WIN32 > thread_local size_t thread_lflow_counter = 0; > +#endif > > static bool > build_dhcpv4_action(struct ovn_port *op, ovs_be32 offer_ip, > diff --git a/northd/northd.h b/northd/northd.h > index 1fbc93c8e..190503753 100644 > --- a/northd/northd.h > +++ b/northd/northd.h > @@ -250,7 +250,11 @@ enum { > STATE_USE_PARALLELIZATION /* parallelization is on */ > }; > > +#ifdef _WIN32 > +static __declspec(thread) size_t thread_lflow_counter = 0; > +#else > extern thread_local size_t thread_lflow_counter; > +#endif Shouldn't this go to OVS's include/openvswitch/compiler.h instead? Maybe define an OVS_THREAD_LOCAL() or something here: https://github.com/openvswitch/ovs/blob/main/include/openvswitch/compiler.h Ilya, Alin, what do you think? > > /* > * Multicast snooping and querier per datapath configuration. Thanks, Dumitru _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev