On Tue, 19 May 2026 12:34:14 +0200
Thomas Monjalon <[email protected]> wrote:

> When compiling with C++20 standard requirement (default in GCC 16),
> the increment and decrement of volatile variables are rejected:
> 
> rte_spinlock.h:241:14: error:
>       '++' expression of 'volatile'-qualified type is deprecated
> rte_spinlock.h:252:21: error:
>       '--' expression of 'volatile'-qualified type is deprecated
> rte_spinlock.h:278:14: error:
>       '++' expression of 'volatile'-qualified type is deprecated
> 
> The count field of rte_spinlock_recursive_t
> does not need the volatile qualifier
> because it is only accessed by the thread holding the lock,
> which already provides the necessary memory ordering.
> 
> The user field can be accessed outside of the lock,
> so it must handled as a C11 atomic variable.
> The name is also changed from user to owner.
> It will break if an application is accessing this field directly,
> which should never happen.
> 
> Fixes: af75078fece3 ("first public release")
> Cc: [email protected]
> 
> Signed

Series-acked-by: Stephen Hemminger <[email protected]>

Reply via email to