From patchwork Thu Mar 2 16:18:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Tyler Retzlaff X-Patchwork-Id: 124719 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3BDBA41DB5; Thu, 2 Mar 2023 17:18:44 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C29A54161A; Thu, 2 Mar 2023 17:18:33 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id A2431400D6 for ; Thu, 2 Mar 2023 17:18:30 +0100 (CET) Received: by linux.microsoft.com (Postfix, from userid 1086) id E9A5220B9C3D; Thu, 2 Mar 2023 08:18:29 -0800 (PST) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com E9A5220B9C3D DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1677773909; bh=1if90ZtJVFLGb00/HzJoNG+URfbamJdi37TKNJeklbA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ghQGtI0N4Vz+hFaDtN0xloSZ5jIa+ekFqTfX37+DRFkUvDOD8utjvVT8VGWjQUTtf RHpH7NNgybi6wrqpEzw94T6r+Eu9+UnbQTDDzoxwInUdBQ6yEAz/H3mFoZS7zEC4eu Qg5Foojra3TmwCKC1lyzTYSrugsIDcpmLzx6nJ9I= From: Tyler Retzlaff To: dev@dpdk.org Cc: Honnappa.Nagarahalli@arm.com, thomas@monjalon.net, bruce.richardson@intel.com, mb@smartsharesystems.com, Ruifeng.Wang@arm.com, maxime.coquelin@redhat.com, Tyler Retzlaff Subject: [PATCH v2 00/17] use __atomic operations returning previous value Date: Thu, 2 Mar 2023 08:18:05 -0800 Message-Id: <1677773902-5167-1-git-send-email-roretzla@linux.microsoft.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1677718068-2412-1-git-send-email-roretzla@linux.microsoft.com> References: <1677718068-2412-1-git-send-email-roretzla@linux.microsoft.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org This series replaces uses of __atomic_{add,and,or,sub,xor}_fetch with __atomic_fetch_{add,and,or,sub,xor} intrinsics. The latter omits generation of code that is only needed if the returned value is actually used. Additionally, this change simplifies adapting dpdk to standard atomics planned for 23.07 since __atomic_fetch_xxx can be trivially replaced with atomic_fetch_xxx whereas __atomic_xxx_fetch has no standard equivalent. v2: net/iavf patch had one incorrect change to __atomic_fetch_sub from __atomic_sub_fetch the new value was assigned to a variable on the previous line so revert the change from the patch. Series-acked-by: Morten Brørup Tyler Retzlaff (17): vhost: use previous value atomic fetch operations telemetry: use previous value atomic fetch operations stack: use previous value atomic fetch operations eal: use previous value atomic fetch operations distributor: use previous value atomic fetch operations bbdev: use previous value atomic fetch operations examples/vhost: use previous value atomic fetch operations net/virtio: use previous value atomic fetch operations net/octeontx: use previous value atomic fetch operations net/mlx5: use previous value atomic fetch operations net/iavf: use previous value atomic fetch operations net/cxgbe: use previous value atomic fetch operations drivers/event: use previous value atomic fetch operations dma/skeleton: use previous value atomic fetch operations drivers/common: use previous value atomic fetch operations app/test: use previous value atomic fetch operations test-eventdev: use previous value atomic fetch operations app/test-eventdev/test_order_common.h | 2 +- app/test/test_lcores.c | 2 +- app/test/test_service_cores.c | 4 ++-- drivers/common/cnxk/roc_nix_inl_dev.c | 2 +- drivers/common/mlx5/mlx5_common_mr.c | 2 +- drivers/common/mlx5/mlx5_common_utils.c | 10 +++++----- drivers/common/mlx5/mlx5_malloc.c | 16 ++++++++-------- drivers/dma/skeleton/skeleton_dmadev.c | 2 +- drivers/event/cnxk/cnxk_eventdev_selftest.c | 12 ++++++------ drivers/event/cnxk/cnxk_tim_worker.h | 6 +++--- drivers/event/dsw/dsw_event.c | 6 +++--- drivers/event/octeontx/timvf_worker.h | 6 +++--- drivers/net/cxgbe/clip_tbl.c | 2 +- drivers/net/cxgbe/cxgbe_main.c | 12 ++++++------ drivers/net/cxgbe/l2t.c | 4 ++-- drivers/net/cxgbe/mps_tcam.c | 2 +- drivers/net/cxgbe/smt.c | 4 ++-- drivers/net/iavf/iavf_vchnl.c | 4 ++-- drivers/net/mlx5/linux/mlx5_verbs.c | 2 +- drivers/net/mlx5/mlx5_flow.c | 6 +++--- drivers/net/mlx5/mlx5_flow_dv.c | 4 ++-- drivers/net/mlx5/mlx5_flow_flex.c | 6 +++--- drivers/net/mlx5/mlx5_flow_hw.c | 10 +++++----- drivers/net/mlx5/mlx5_flow_meter.c | 20 ++++++++++---------- drivers/net/mlx5/mlx5_rx.h | 2 +- drivers/net/octeontx/octeontx_ethdev.c | 2 +- drivers/net/virtio/virtio_user/virtio_user_dev.c | 2 +- examples/vhost/main.c | 12 ++++++------ examples/vhost/virtio_net.c | 4 ++-- lib/bbdev/rte_bbdev.c | 2 +- lib/distributor/rte_distributor.c | 2 +- lib/eal/common/eal_common_trace.c | 8 ++++---- lib/eal/common/rte_service.c | 8 ++++---- lib/eal/ppc/include/rte_atomic.h | 16 ++++++++-------- lib/stack/rte_stack_lf_c11.h | 2 +- lib/telemetry/telemetry.c | 6 +++--- lib/vhost/virtio_net.c | 6 +++--- 37 files changed, 109 insertions(+), 109 deletions(-)