On Fri, Feb 21, 2025 at 09:58:28PM +0100, Morten Brørup wrote: > > From: Andre Muezerie [mailto:andre...@linux.microsoft.com] > > Sent: Friday, 21 February 2025 20.53 > > > > Compiling with MSVC results in the error below: > > > > app/test/test_ring_perf.c(197): error C7712: address argument to atomic > > operation must be a pointer to an atomic integer, > > 'volatile unsigned int *' is not valid > > > > The fix is to mark lcore_count as atomic. > > > > Signed-off-by: Andre Muezerie <andre...@linux.microsoft.com> > > Signed-off-by: Chengwen Feng <fengcheng...@huawei.com> > > --- > > app/test/test_ring_perf.c | 6 +----- > > 1 file changed, 1 insertion(+), 5 deletions(-) > > > > diff --git a/app/test/test_ring_perf.c b/app/test/test_ring_perf.c > > index 57cd04a124..921aa902c5 100644 > > --- a/app/test/test_ring_perf.c > > +++ b/app/test/test_ring_perf.c > > @@ -34,7 +34,7 @@ struct lcore_pair { > > unsigned c1, c2; > > }; > > > > -static volatile unsigned lcore_count = 0; > > +static volatile RTE_ATOMIC(unsigned int) lcore_count; > > Using rte_atomic_xxx to access the RTE_ATOMIC qualified lcore_count seems > more clean than making it volatile and sometimes access it non-atomically. > It is only accessed two more times, so not a big change. > > Anyway, this could just be my personal preference. No change required if you > disagree.
Makes sense. I'll send an updated series.