[PATCH v3 00/19] use rte optional stdatomic API
David Marchand
david.marchand at redhat.com
Thu Oct 26 15:47:58 CEST 2023
On Thu, Oct 26, 2023 at 2:32 AM Tyler Retzlaff
<roretzla at linux.microsoft.com> wrote:
>
> Replace the use of gcc builtin __atomic_xxx intrinsics with
> corresponding rte_atomic_xxx optional stdatomic API.
>
> v3:
> * add missing atomic specification on head variable
> in struct rte_ring_headtail
> * adapt to use rte_atomic_xxx stdatomic API in rte_ring_c11_pvt.h
> * split comma operator statement into 2 statements
>
> v2:
> * add #include <rte_stdatomic.h> to rte_mbuf_core.h
> * remove first two patches which were fixes that have
> been merged in another series
>
> Tyler Retzlaff (19):
> power: use rte optional stdatomic API
> bbdev: use rte optional stdatomic API
> eal: use rte optional stdatomic API
> eventdev: use rte optional stdatomic API
> gpudev: use rte optional stdatomic API
> ipsec: use rte optional stdatomic API
> mbuf: use rte optional stdatomic API
> mempool: use rte optional stdatomic API
> rcu: use rte optional stdatomic API
> pdump: use rte optional stdatomic API
> stack: use rte optional stdatomic API
> telemetry: use rte optional stdatomic API
> vhost: use rte optional stdatomic API
> cryptodev: use rte optional stdatomic API
> distributor: use rte optional stdatomic API
> ethdev: use rte optional stdatomic API
> hash: use rte optional stdatomic API
> timer: use rte optional stdatomic API
> ring: use rte optional stdatomic API
>
> drivers/event/cnxk/cnxk_tim_worker.h | 4 +-
> drivers/net/mlx5/mlx5_hws_cnt.h | 4 +-
> lib/bbdev/rte_bbdev.c | 6 +-
> lib/bbdev/rte_bbdev.h | 2 +-
> lib/cryptodev/rte_cryptodev.c | 22 +++---
> lib/cryptodev/rte_cryptodev.h | 16 ++---
> lib/distributor/distributor_private.h | 4 +-
> lib/distributor/rte_distributor.c | 54 +++++++--------
> lib/eal/common/eal_common_launch.c | 10 +--
> lib/eal/common/eal_common_mcfg.c | 2 +-
> lib/eal/common/eal_common_proc.c | 14 ++--
> lib/eal/common/eal_common_thread.c | 26 +++----
> lib/eal/common/eal_common_trace.c | 8 +--
> lib/eal/common/eal_common_trace_ctf.c | 4 +-
> lib/eal/common/eal_memcfg.h | 2 +-
> lib/eal/common/eal_private.h | 4 +-
> lib/eal/common/eal_trace.h | 4 +-
> lib/eal/common/rte_service.c | 122 ++++++++++++++++-----------------
> lib/eal/freebsd/eal.c | 20 +++---
> lib/eal/include/rte_epoll.h | 3 +-
> lib/eal/linux/eal.c | 26 +++----
> lib/eal/linux/eal_interrupts.c | 42 ++++++------
> lib/eal/ppc/include/rte_atomic.h | 6 +-
> lib/eal/windows/rte_thread.c | 8 ++-
> lib/ethdev/ethdev_driver.h | 16 ++---
> lib/ethdev/ethdev_private.c | 6 +-
> lib/ethdev/rte_ethdev.c | 24 +++----
> lib/ethdev/rte_ethdev.h | 16 ++---
> lib/ethdev/rte_ethdev_core.h | 2 +-
> lib/eventdev/rte_event_timer_adapter.c | 66 +++++++++---------
> lib/eventdev/rte_event_timer_adapter.h | 2 +-
> lib/gpudev/gpudev.c | 6 +-
> lib/gpudev/gpudev_driver.h | 2 +-
> lib/hash/rte_cuckoo_hash.c | 116 +++++++++++++++----------------
> lib/hash/rte_cuckoo_hash.h | 6 +-
> lib/ipsec/ipsec_sqn.h | 2 +-
> lib/ipsec/sa.h | 2 +-
> lib/mbuf/rte_mbuf.h | 20 +++---
> lib/mbuf/rte_mbuf_core.h | 5 +-
> lib/mempool/rte_mempool.h | 4 +-
> lib/pdump/rte_pdump.c | 14 ++--
> lib/pdump/rte_pdump.h | 8 +--
> lib/power/power_acpi_cpufreq.c | 33 ++++-----
> lib/power/power_cppc_cpufreq.c | 25 +++----
> lib/power/power_pstate_cpufreq.c | 31 +++++----
> lib/rcu/rte_rcu_qsbr.c | 48 ++++++-------
> lib/rcu/rte_rcu_qsbr.h | 68 +++++++++---------
> lib/ring/rte_ring_c11_pvt.h | 47 +++++++------
> lib/ring/rte_ring_core.h | 12 ++--
> lib/ring/rte_ring_generic_pvt.h | 16 +++--
> lib/ring/rte_ring_hts_elem_pvt.h | 22 +++---
> lib/ring/rte_ring_peek_elem_pvt.h | 6 +-
> lib/ring/rte_ring_rts_elem_pvt.h | 27 ++++----
> lib/stack/rte_stack.h | 2 +-
> lib/stack/rte_stack_lf_c11.h | 24 +++----
> lib/stack/rte_stack_lf_generic.h | 18 ++---
> lib/telemetry/telemetry.c | 18 ++---
> lib/timer/rte_timer.c | 50 +++++++-------
> lib/timer/rte_timer.h | 6 +-
> lib/vhost/vdpa.c | 3 +-
> lib/vhost/vhost.c | 42 ++++++------
> lib/vhost/vhost.h | 39 ++++++-----
> lib/vhost/vhost_user.c | 6 +-
> lib/vhost/virtio_net.c | 58 +++++++++-------
> lib/vhost/virtio_net_ctrl.c | 6 +-
> 65 files changed, 684 insertions(+), 653 deletions(-)
The conversion looks correct to me and the CI looks happy.
There are a few acks (from Konstantin) that are missing in the v3 (but
I can fix this myself, no need for a new revision just for this).
For the series,
Acked-by: David Marchand <david.marchand at redhat.com>
--
David Marchand
More information about the dev
mailing list