From patchwork Fri Jul 23 09:49:43 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joyce Kong X-Patchwork-Id: 96236 X-Patchwork-Delegate: thomas@monjalon.net 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 2A68FA0C46; Fri, 23 Jul 2021 11:51:05 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1585E40040; Fri, 23 Jul 2021 11:51:05 +0200 (CEST) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mails.dpdk.org (Postfix) with ESMTP id 01D204003C; Fri, 23 Jul 2021 11:51:04 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 37F4F113E; Fri, 23 Jul 2021 02:51:03 -0700 (PDT) Received: from net-arm-n1sdp.shanghai.arm.com (net-arm-n1sdp.shanghai.arm.com [10.169.208.222]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 9A28A3F694; Fri, 23 Jul 2021 02:51:00 -0700 (PDT) From: Joyce Kong To: thomas@monjalon.net, stephen@networkplumber.org, honnappa.nagarahalli@arm.com, ruifeng.wang@arm.com, mdr@ashroe.eu Cc: dev@dpdk.org, nd@arm.com, stable@dpdk.org Date: Fri, 23 Jul 2021 04:49:43 -0500 Message-Id: <20210723094943.7203-1-joyce.kong@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210712080237.19920-1-joyce.kong@arm.com> References: <20210712080237.19920-1-joyce.kong@arm.com> Subject: [dpdk-dev] [PATCH v2] doc: update atomic operation deprecation 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 Sender: "dev" Update the incorrect description about atomic operations with provided wrappers in deprecation doc[1]. [1]https://mails.dpdk.org/archives/dev/2021-July/213333.html Fixes: 7518c5c4ae6a ("doc: announce adoption of C11 atomic operations semantics") Cc: stable@dpdk.org Signed-off-by: Joyce Kong Reviewed-by: Ruifeng Wang --- doc/guides/rel_notes/deprecation.rst | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 9584d6bfd7..a4f350fa09 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -19,16 +19,18 @@ Deprecation Notices * rte_atomicNN_xxx: These APIs do not take memory order parameter. This does not allow for writing optimized code for all the CPU architectures supported - in DPDK. DPDK will adopt C11 atomic operations semantics and provide wrappers - using C11 atomic built-ins. These wrappers must be used for patches that - need to be merged in 20.08 onwards. This change will not introduce any - performance degradation. + in DPDK. DPDK has adopted the atomic operations from + https://gcc.gnu.org/onlinedocs/gcc/_005f_005fatomic-Builtins.html. These + operations must be used for patches that need to be merged in 20.08 onwards. + This change will not introduce any performance degradation. * rte_smp_*mb: These APIs provide full barrier functionality. However, many - use cases do not require full barriers. To support such use cases, DPDK will - adopt C11 barrier semantics and provide wrappers using C11 atomic built-ins. - These wrappers must be used for patches that need to be merged in 20.08 - onwards. This change will not introduce any performance degradation. + use cases do not require full barriers. To support such use cases, DPDK has + adopted atomic operations from + https://gcc.gnu.org/onlinedocs/gcc/_005f_005fatomic-Builtins.html. These + operations and a new wrapper ``rte_atomic_thread_fence`` instead of + ``__atomic_thread_fence`` must be used for patches that need to be merged in + 20.08 onwards. This change will not introduce any performance degradation. * lib: will fix extending some enum/define breaking the ABI. There are multiple samples in DPDK that enum/define terminated with a ``.*MAX.*`` value which is