From patchwork Thu Nov 2 03:04:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tyler Retzlaff X-Patchwork-Id: 133760 X-Patchwork-Delegate: david.marchand@redhat.com 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 D02BC43268; Thu, 2 Nov 2023 04:04:44 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AEC4D40A81; Thu, 2 Nov 2023 04:04:35 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id E088E402D9 for ; Thu, 2 Nov 2023 04:04:31 +0100 (CET) Received: by linux.microsoft.com (Postfix, from userid 1086) id E38C020B74C1; Wed, 1 Nov 2023 20:04:30 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com E38C020B74C1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1698894270; bh=flsUqd3vfaLrOtQRScJgRnx07gv4DdOXZveDUWzPY6M=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=NB4C5arwfR3dHun/a/CAr1a8ySi99Rd999+sn4RkhbBxol4FdKdLZNmzjtb6Z5gJ0 8Jv0bK7l5KWC4yrI7krYbVAQX1CgtC6ocxJgLD2QZxKsSoonVjUdxBIlVnxViOOzIz oEVgnirQdSDBuUo2nwAOq/FNqTc71AE7DtxCjlOU= From: Tyler Retzlaff To: dev@dpdk.org Cc: Bruce Richardson , David Hunt , Honnappa Nagarahalli , Jerin Jacob , Konstantin Ananyev , Sameh Gobriel , Sunil Kumar Kori , Vladimir Medvedkin , Yipeng Wang , Tyler Retzlaff Subject: [PATCH 1/5] distributor: use rte atomic thread fence Date: Wed, 1 Nov 2023 20:04:21 -0700 Message-Id: <1698894265-22963-2-git-send-email-roretzla@linux.microsoft.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1698894265-22963-1-git-send-email-roretzla@linux.microsoft.com> References: <1698894265-22963-1-git-send-email-roretzla@linux.microsoft.com> 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 Use __rte_atomic_thread_fence instead of directly using __atomic_thread_fence builtin gcc intrinsic Signed-off-by: Tyler Retzlaff --- lib/distributor/rte_distributor.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/distributor/rte_distributor.c b/lib/distributor/rte_distributor.c index 2ecb95c..848cf85 100644 --- a/lib/distributor/rte_distributor.c +++ b/lib/distributor/rte_distributor.c @@ -187,7 +187,7 @@ } /* Sync with distributor to acquire retptrs */ - __atomic_thread_fence(rte_memory_order_acquire); + __rte_atomic_thread_fence(rte_memory_order_acquire); for (i = 0; i < RTE_DIST_BURST_SIZE; i++) /* Switch off the return bit first */ buf->retptr64[i] = 0; From patchwork Thu Nov 2 03:04:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tyler Retzlaff X-Patchwork-Id: 133762 X-Patchwork-Delegate: david.marchand@redhat.com 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 B020E43268; Thu, 2 Nov 2023 04:04:56 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1FB6542D0B; Thu, 2 Nov 2023 04:04:38 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id 164D8402DE for ; Thu, 2 Nov 2023 04:04:32 +0100 (CET) Received: by linux.microsoft.com (Postfix, from userid 1086) id F190C20B74C2; Wed, 1 Nov 2023 20:04:30 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com F190C20B74C2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1698894270; bh=QTwwIGjczf0MYPVx9s/KDp/wlnwDvSwbtpUhZ3lmAU0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=mxHDqPa3XF6uMRl0Fi4LqPVGPSH300Kl4qPxEvNSX3fM8UsastbNxOy9BU7KISrZ9 CwsihDDJP+E5+zMvUVXjfKIabJyZQKDFGErSmYtFR4PPt7H7jI0VN1d7dn+GQdzRkE gcIbheWpTD9NvKmUeXqtO9ipSz1So2EdAESaLZy0= From: Tyler Retzlaff To: dev@dpdk.org Cc: Bruce Richardson , David Hunt , Honnappa Nagarahalli , Jerin Jacob , Konstantin Ananyev , Sameh Gobriel , Sunil Kumar Kori , Vladimir Medvedkin , Yipeng Wang , Tyler Retzlaff Subject: [PATCH 2/5] eal: use rte atomic thread fence Date: Wed, 1 Nov 2023 20:04:22 -0700 Message-Id: <1698894265-22963-3-git-send-email-roretzla@linux.microsoft.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1698894265-22963-1-git-send-email-roretzla@linux.microsoft.com> References: <1698894265-22963-1-git-send-email-roretzla@linux.microsoft.com> 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 Use __rte_atomic_thread_fence instead of directly using __atomic_thread_fence builtin gcc intrinsic Signed-off-by: Tyler Retzlaff --- lib/eal/common/eal_common_trace.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/eal/common/eal_common_trace.c b/lib/eal/common/eal_common_trace.c index 6ad87fc..4a09cbf 100644 --- a/lib/eal/common/eal_common_trace.c +++ b/lib/eal/common/eal_common_trace.c @@ -526,7 +526,7 @@ rte_trace_mode rte_trace_mode_get(void) /* Add the trace point at tail */ STAILQ_INSERT_TAIL(&tp_list, tp, next); - __atomic_thread_fence(rte_memory_order_release); + __rte_atomic_thread_fence(rte_memory_order_release); /* All Good !!! */ return 0; From patchwork Thu Nov 2 03:04:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tyler Retzlaff X-Patchwork-Id: 133759 X-Patchwork-Delegate: david.marchand@redhat.com 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 7FB6543268; Thu, 2 Nov 2023 04:04:33 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6A0ED402C4; Thu, 2 Nov 2023 04:04:33 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id BF1F840284 for ; Thu, 2 Nov 2023 04:04:31 +0100 (CET) Received: by linux.microsoft.com (Postfix, from userid 1086) id 09DA320B74C3; Wed, 1 Nov 2023 20:04:30 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 09DA320B74C3 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1698894271; bh=lavQ2zNV2kAJsaK2MwR09naFlG2mmCAk2MzoljoaY0I=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=AmBGpWjlVoHyA3t8lcmPdNxv2e++c3Udq/TPJGP/KTzKOVPNovuvFUNpIdcOPM8x4 8EbEDsM49HZSFIG9v/wOv33uID2ipMHFPTmAoCVL5JBGiXlLWiWNITNADCTOY9N+m1 ZhnkGHDYNsOFXRyn0+TWIp3hDRoXphLartOXReeg= From: Tyler Retzlaff To: dev@dpdk.org Cc: Bruce Richardson , David Hunt , Honnappa Nagarahalli , Jerin Jacob , Konstantin Ananyev , Sameh Gobriel , Sunil Kumar Kori , Vladimir Medvedkin , Yipeng Wang , Tyler Retzlaff Subject: [PATCH 3/5] hash: use rte atomic thread fence Date: Wed, 1 Nov 2023 20:04:23 -0700 Message-Id: <1698894265-22963-4-git-send-email-roretzla@linux.microsoft.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1698894265-22963-1-git-send-email-roretzla@linux.microsoft.com> References: <1698894265-22963-1-git-send-email-roretzla@linux.microsoft.com> 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 Use __rte_atomic_thread_fence instead of directly using __atomic_thread_fence builtin gcc intrinsic Signed-off-by: Tyler Retzlaff --- lib/hash/rte_cuckoo_hash.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/hash/rte_cuckoo_hash.c b/lib/hash/rte_cuckoo_hash.c index b2cf60d..ca350ed 100644 --- a/lib/hash/rte_cuckoo_hash.c +++ b/lib/hash/rte_cuckoo_hash.c @@ -871,7 +871,7 @@ struct rte_hash * /* The store to sig_current should not * move above the store to tbl_chng_cnt. */ - __atomic_thread_fence(rte_memory_order_release); + __rte_atomic_thread_fence(rte_memory_order_release); } /* Need to swap current/alt sig to allow later @@ -903,7 +903,7 @@ struct rte_hash * /* The store to sig_current should not * move above the store to tbl_chng_cnt. */ - __atomic_thread_fence(rte_memory_order_release); + __rte_atomic_thread_fence(rte_memory_order_release); } curr_bkt->sig_current[curr_slot] = sig; @@ -1396,7 +1396,7 @@ struct rte_hash * /* The loads of sig_current in search_one_bucket * should not move below the load from tbl_chng_cnt. */ - __atomic_thread_fence(rte_memory_order_acquire); + __rte_atomic_thread_fence(rte_memory_order_acquire); /* Re-read the table change counter to check if the * table has changed during search. If yes, re-do * the search. @@ -1625,7 +1625,7 @@ struct rte_hash * /* The store to sig_current should * not move above the store to tbl_chng_cnt. */ - __atomic_thread_fence(rte_memory_order_release); + __rte_atomic_thread_fence(rte_memory_order_release); } last_bkt->sig_current[i] = NULL_SIGNATURE; rte_atomic_store_explicit(&last_bkt->key_idx[i], @@ -2216,7 +2216,7 @@ struct rte_hash * /* The loads of sig_current in compare_signatures * should not move below the load from tbl_chng_cnt. */ - __atomic_thread_fence(rte_memory_order_acquire); + __rte_atomic_thread_fence(rte_memory_order_acquire); /* Re-read the table change counter to check if the * table has changed during search. If yes, re-do * the search. From patchwork Thu Nov 2 03:04:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tyler Retzlaff X-Patchwork-Id: 133761 X-Patchwork-Delegate: david.marchand@redhat.com 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 5EEB043268; Thu, 2 Nov 2023 04:04:50 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E4035402DF; Thu, 2 Nov 2023 04:04:36 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id DC9B4402CF for ; Thu, 2 Nov 2023 04:04:31 +0100 (CET) Received: by linux.microsoft.com (Postfix, from userid 1086) id 16C5820B74C4; Wed, 1 Nov 2023 20:04:30 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 16C5820B74C4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1698894271; bh=nXEJjRzDL4O01yO2JnhWFoRRiYXhzD8TQOzcce4OVIA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ptWlFX6OBGTu0PtpQgWtCy7TMaznL/ERbXJnytj+iuhPICmnu4uRZB5ooUYc4cGaL wu7sqa/aYS0oXULKjccOL9JPRjcG/UiMLXSO7DnmYnp2FCLlFoqFyOyCoFmmyxhr13 DQRR5lpvCbqpeZsTrygOM/jtVI8hxvWwxklpOT9A= From: Tyler Retzlaff To: dev@dpdk.org Cc: Bruce Richardson , David Hunt , Honnappa Nagarahalli , Jerin Jacob , Konstantin Ananyev , Sameh Gobriel , Sunil Kumar Kori , Vladimir Medvedkin , Yipeng Wang , Tyler Retzlaff Subject: [PATCH 4/5] ring: use rte atomic thread fence Date: Wed, 1 Nov 2023 20:04:24 -0700 Message-Id: <1698894265-22963-5-git-send-email-roretzla@linux.microsoft.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1698894265-22963-1-git-send-email-roretzla@linux.microsoft.com> References: <1698894265-22963-1-git-send-email-roretzla@linux.microsoft.com> 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 Use __rte_atomic_thread_fence instead of directly using __atomic_thread_fence builtin gcc intrinsic Signed-off-by: Tyler Retzlaff --- lib/ring/rte_ring_c11_pvt.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ring/rte_ring_c11_pvt.h b/lib/ring/rte_ring_c11_pvt.h index 5c10ad8..38a003d 100644 --- a/lib/ring/rte_ring_c11_pvt.h +++ b/lib/ring/rte_ring_c11_pvt.h @@ -68,7 +68,7 @@ n = max; /* Ensure the head is read before tail */ - __atomic_thread_fence(rte_memory_order_acquire); + __rte_atomic_thread_fence(rte_memory_order_acquire); /* load-acquire synchronize with store-release of ht->tail * in update_tail. @@ -145,7 +145,7 @@ n = max; /* Ensure the head is read before tail */ - __atomic_thread_fence(rte_memory_order_acquire); + __rte_atomic_thread_fence(rte_memory_order_acquire); /* this load-acquire synchronize with store-release of ht->tail * in update_tail. From patchwork Thu Nov 2 03:04:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tyler Retzlaff X-Patchwork-Id: 133763 X-Patchwork-Delegate: david.marchand@redhat.com 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 A98AA43268; Thu, 2 Nov 2023 04:05:02 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 593BE42DC7; Thu, 2 Nov 2023 04:04:39 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id DE85240284 for ; Thu, 2 Nov 2023 04:04:32 +0100 (CET) Received: by linux.microsoft.com (Postfix, from userid 1086) id 2352320B74C5; Wed, 1 Nov 2023 20:04:30 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 2352320B74C5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1698894271; bh=s0fBiowJzXX7bl0KOiocMQU5PJHIAyTsyVoZB7+0rTk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=fqklHaQ5Evv7L7XJH6Z1PPetVAUrXXSZUbu0uYEU0eNMuGLgmj0QqN8xQkCFTi6CH OX9yTpe0cOsElOnt/f+jmH+/mCGAoNvFbz52K/5PE+2tRbWDGdSvwIkvHZYqO+Y1HG +abujju76ziYShS1sogD8qumDF3a6W4Hv2aSUfn8= From: Tyler Retzlaff To: dev@dpdk.org Cc: Bruce Richardson , David Hunt , Honnappa Nagarahalli , Jerin Jacob , Konstantin Ananyev , Sameh Gobriel , Sunil Kumar Kori , Vladimir Medvedkin , Yipeng Wang , Tyler Retzlaff Subject: [PATCH 5/5] stack: use rte atomic thread fence Date: Wed, 1 Nov 2023 20:04:25 -0700 Message-Id: <1698894265-22963-6-git-send-email-roretzla@linux.microsoft.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1698894265-22963-1-git-send-email-roretzla@linux.microsoft.com> References: <1698894265-22963-1-git-send-email-roretzla@linux.microsoft.com> 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 Use __rte_atomic_thread_fence instead of directly using __atomic_thread_fence builtin gcc intrinsic Signed-off-by: Tyler Retzlaff --- lib/stack/rte_stack_lf_c11.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/stack/rte_stack_lf_c11.h b/lib/stack/rte_stack_lf_c11.h index 9cb6998..0f86434 100644 --- a/lib/stack/rte_stack_lf_c11.h +++ b/lib/stack/rte_stack_lf_c11.h @@ -110,7 +110,7 @@ * elements are properly ordered with respect to the head * pointer read. */ - __atomic_thread_fence(rte_memory_order_acquire); + __rte_atomic_thread_fence(rte_memory_order_acquire); rte_prefetch0(old_head.top);