mbox series

[v3,00/16] replace __atomic operations returning new value

Message ID 1679338836-21321-1-git-send-email-roretzla@linux.microsoft.com (mailing list archive)
Headers
Series replace __atomic operations returning new value |

Message

Tyler Retzlaff March 20, 2023, 7 p.m. UTC
  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.

This series is being separated from the other similar series in
an effort to reduce the chance of mistakes being spotted in review
since the usages in this case consume the returned / new value.

v3:
    * incorporate Reviewed-by and Acked-by received so far
    * rebase series on -rc3 to get a fresh CI run

v2:
    * remove unnecessary casts of signed to unsigned arguments when
      using generic __atomic builtins.
    * remove inappropriate cast of signed negative value on addend.

*** BLURB HERE ***

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

 app/test/test_ring_perf.c               |  2 +-
 drivers/common/cnxk/roc_ae.c            |  2 +-
 drivers/common/cnxk/roc_ae_fpm_tables.c |  2 +-
 drivers/common/cnxk/roc_npa.c           |  2 +-
 drivers/common/mlx5/linux/mlx5_nl.c     |  2 +-
 drivers/common/mlx5/mlx5_common_mr.c    |  8 ++++----
 drivers/common/mlx5/mlx5_common_utils.c |  8 ++++----
 drivers/event/cnxk/cnxk_tim_worker.h    |  2 +-
 drivers/event/dsw/dsw_event.c           |  4 ++--
 drivers/event/octeontx/timvf_worker.h   |  2 +-
 drivers/net/af_xdp/rte_eth_af_xdp.c     |  4 ++--
 drivers/net/cnxk/cn10k_tx.h             |  4 ++--
 drivers/net/cxgbe/clip_tbl.c            |  2 +-
 drivers/net/cxgbe/mps_tcam.c            |  2 +-
 drivers/net/iavf/iavf_vchnl.c           |  8 ++++----
 drivers/net/mlx5/linux/mlx5_verbs.c     |  2 +-
 drivers/net/mlx5/mlx5.c                 |  4 ++--
 drivers/net/mlx5/mlx5_flow.c            |  8 ++++----
 drivers/net/mlx5/mlx5_flow_dv.c         | 12 ++++++------
 drivers/net/mlx5/mlx5_flow_hw.c         | 14 +++++++-------
 drivers/net/mlx5/mlx5_hws_cnt.c         |  4 ++--
 drivers/net/mlx5/mlx5_rxq.c             |  6 +++---
 drivers/net/mlx5/mlx5_txq.c             |  2 +-
 drivers/net/octeontx/octeontx_ethdev.c  |  2 +-
 drivers/raw/ifpga/ifpga_rawdev.c        |  2 +-
 lib/bbdev/rte_bbdev.c                   |  4 ++--
 lib/eal/include/generic/rte_rwlock.h    |  8 ++++----
 lib/eal/ppc/include/rte_atomic.h        | 16 ++++++++--------
 lib/ipsec/ipsec_sqn.h                   |  2 +-
 lib/mbuf/rte_mbuf.h                     | 12 ++++++------
 lib/rcu/rte_rcu_qsbr.h                  |  2 +-
 31 files changed, 77 insertions(+), 77 deletions(-)
  

Comments

David Marchand April 25, 2023, 9:10 a.m. UTC | #1
On Mon, Mar 20, 2023 at 8:01 PM Tyler Retzlaff
<roretzla@linux.microsoft.com> 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.
>
> This series is being separated from the other similar series in
> an effort to reduce the chance of mistakes being spotted in review
> since the usages in this case consume the returned / new value.
>
> v3:
>     * incorporate Reviewed-by and Acked-by received so far
>     * rebase series on -rc3 to get a fresh CI run
>
> v2:
>     * remove unnecessary casts of signed to unsigned arguments when
>       using generic __atomic builtins.
>     * remove inappropriate cast of signed negative value on addend.
>
> 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
>
>  app/test/test_ring_perf.c               |  2 +-
>  drivers/common/cnxk/roc_ae.c            |  2 +-
>  drivers/common/cnxk/roc_ae_fpm_tables.c |  2 +-
>  drivers/common/cnxk/roc_npa.c           |  2 +-
>  drivers/common/mlx5/linux/mlx5_nl.c     |  2 +-
>  drivers/common/mlx5/mlx5_common_mr.c    |  8 ++++----
>  drivers/common/mlx5/mlx5_common_utils.c |  8 ++++----
>  drivers/event/cnxk/cnxk_tim_worker.h    |  2 +-
>  drivers/event/dsw/dsw_event.c           |  4 ++--
>  drivers/event/octeontx/timvf_worker.h   |  2 +-
>  drivers/net/af_xdp/rte_eth_af_xdp.c     |  4 ++--
>  drivers/net/cnxk/cn10k_tx.h             |  4 ++--
>  drivers/net/cxgbe/clip_tbl.c            |  2 +-
>  drivers/net/cxgbe/mps_tcam.c            |  2 +-
>  drivers/net/iavf/iavf_vchnl.c           |  8 ++++----
>  drivers/net/mlx5/linux/mlx5_verbs.c     |  2 +-
>  drivers/net/mlx5/mlx5.c                 |  4 ++--
>  drivers/net/mlx5/mlx5_flow.c            |  8 ++++----
>  drivers/net/mlx5/mlx5_flow_dv.c         | 12 ++++++------
>  drivers/net/mlx5/mlx5_flow_hw.c         | 14 +++++++-------
>  drivers/net/mlx5/mlx5_hws_cnt.c         |  4 ++--
>  drivers/net/mlx5/mlx5_rxq.c             |  6 +++---
>  drivers/net/mlx5/mlx5_txq.c             |  2 +-
>  drivers/net/octeontx/octeontx_ethdev.c  |  2 +-
>  drivers/raw/ifpga/ifpga_rawdev.c        |  2 +-
>  lib/bbdev/rte_bbdev.c                   |  4 ++--
>  lib/eal/include/generic/rte_rwlock.h    |  8 ++++----
>  lib/eal/ppc/include/rte_atomic.h        | 16 ++++++++--------
>  lib/ipsec/ipsec_sqn.h                   |  2 +-
>  lib/mbuf/rte_mbuf.h                     | 12 ++++++------
>  lib/rcu/rte_rcu_qsbr.h                  |  2 +-
>  31 files changed, 77 insertions(+), 77 deletions(-)
>

LGTM.
Series applied, thanks.