On Thu, Mar 16, 2023 at 09:17:05AM -0700, Tyler Retzlaff wrote: > On Thu, Mar 16, 2023 at 04:25:41PM +0100, Thomas Monjalon wrote: > > 16/03/2023 11:03, Bruce Richardson: > > > On Wed, Mar 15, 2023 at 02:15:29PM -0700, Tyler Retzlaff wrote: > > > > This series replaces uses of __atomic_{add,and,or,sub,xor}_fetch with > > > > __atomic_fetch_{add,and,or,sub,xor} intrinsics where the new value > > > > is used. > > [...] > > > > Tyler Retzlaff (16): > > > > app/test: use previous value atomic fetch operations > > > > common/cnxk: use previous value atomic fetch operations > > > > common/mlx5: use previous value atomic fetch operations > > > > drivers/event: use previous value atomic fetch operations > > > > net/af_xdp: use previous value atomic fetch operations > > > > net/cnxk: use previous value atomic fetch operations > > > > net/cxgbe: use previous value atomic fetch operations > > > > net/iavf: use previous value atomic fetch operations > > > > net/mlx5: use previous value atomic fetch operations > > > > net/octeontx: use previous value atomic fetch operations > > > > raw/ifpga: use previous value atomic fetch operations > > > > bbdev: use previous value atomic fetch operations > > > > eal: use previous value atomic fetch operations > > > > ipsec: use previous value atomic fetch operations > > > > mbuf: use previous value atomic fetch operations > > > > rcu: use previous value atomic fetch operations > > > > > > > I am wondering how we go about ensuring that we don't introduce any more > > > of > > > these atomic_X_fetch intrinsics. Is there some way we can add a compiler > > > warning for them or have a checkpatch check, for example? > > > > In devtools/checkpatches.sh, we are checking for these patterns: > > rte_atomic[0-9][0-9]_.*\( > > __atomic_thread_fence\( > > > > Feel free to add more "forbidden patterns". > > > > > > yes, i was going to do this before end of week but got interrupted by > other work. i will introduce a patch for checkpatches.sh standalone > asap that can be merged before these changes.
just fyi, there is a series up for this. https://patchwork.dpdk.org/project/dpdk/list/?series=27613