From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 55CCBC43613 for ; Sun, 23 Jun 2019 02:41:53 +0000 (UTC) Received: from dpdk.org (dpdk.org [92.243.14.124]) by mail.kernel.org (Postfix) with ESMTP id E905020673 for ; Sun, 23 Jun 2019 02:41:52 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E905020673 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=dev-bounces@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0D2211C27A; Sun, 23 Jun 2019 04:41:51 +0200 (CEST) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by dpdk.org (Postfix) with ESMTP id 446B21C12B for ; Sun, 23 Jun 2019 04:41:50 +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 C9538360; Sat, 22 Jun 2019 19:41:49 -0700 (PDT) Received: from phil-VirtualBox.shanghai.arm.com (unknown [10.171.20.36]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id F2DF63F575; Sat, 22 Jun 2019 19:41:47 -0700 (PDT) From: Phil Yang To: dev@dpdk.org Cc: thomas@monjalon.net, jerinj@marvell.com, hemant.agrawal@nxp.com, Honnappa.Nagarahalli@arm.com, gavin.hu@arm.com, nd@arm.com, gage.eads@intel.com Date: Sun, 23 Jun 2019 10:41:11 +0800 Message-Id: <1561257671-10316-3-git-send-email-phil.yang@arm.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1561257671-10316-1-git-send-email-phil.yang@arm.com> References: <1561257671-10316-1-git-send-email-phil.yang@arm.com> Subject: [dpdk-dev] [PATCH v1 3/3] eal/stack: enable lock-free stack for aarch64 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" Enable both c11 atomic and non c11 atomic lock-free stack for aarch64. Signed-off-by: Phil Yang Tested-by: Honnappa Nagarahalli Reviewed-by: Honnappa Nagarahalli --- doc/guides/rel_notes/release_19_08.rst | 3 +++ lib/librte_stack/rte_stack_lf_c11.h | 4 ++-- lib/librte_stack/rte_stack_lf_generic.h | 4 ++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/doc/guides/rel_notes/release_19_08.rst b/doc/guides/rel_notes/release_19_08.rst index 8c3932d..b79ae28 100644 --- a/doc/guides/rel_notes/release_19_08.rst +++ b/doc/guides/rel_notes/release_19_08.rst @@ -88,6 +88,9 @@ New Features * Added multi-queue support to allow one af_xdp vdev with multiple netdev queues +* **Added Lock-free Stack for aarch64.** + + The lock-free stack implementation is enabled for aarch64 platforms. Removed Items ------------- diff --git a/lib/librte_stack/rte_stack_lf_c11.h b/lib/librte_stack/rte_stack_lf_c11.h index 3d677ae..67c21fd 100644 --- a/lib/librte_stack/rte_stack_lf_c11.h +++ b/lib/librte_stack/rte_stack_lf_c11.h @@ -36,7 +36,7 @@ __rte_stack_lf_push_elems(struct rte_stack_lf_list *list, struct rte_stack_lf_elem *last, unsigned int num) { -#ifndef RTE_ARCH_X86_64 +#if !defined(RTE_ARCH_X86_64) && !defined(RTE_ARCH_ARM64) RTE_SET_USED(first); RTE_SET_USED(last); RTE_SET_USED(list); @@ -88,7 +88,7 @@ __rte_stack_lf_pop_elems(struct rte_stack_lf_list *list, void **obj_table, struct rte_stack_lf_elem **last) { -#ifndef RTE_ARCH_X86_64 +#if !defined(RTE_ARCH_X86_64) && !defined(RTE_ARCH_ARM64) RTE_SET_USED(obj_table); RTE_SET_USED(last); RTE_SET_USED(list); diff --git a/lib/librte_stack/rte_stack_lf_generic.h b/lib/librte_stack/rte_stack_lf_generic.h index 3182151..488fd9f 100644 --- a/lib/librte_stack/rte_stack_lf_generic.h +++ b/lib/librte_stack/rte_stack_lf_generic.h @@ -36,7 +36,7 @@ __rte_stack_lf_push_elems(struct rte_stack_lf_list *list, struct rte_stack_lf_elem *last, unsigned int num) { -#ifndef RTE_ARCH_X86_64 +#if !defined(RTE_ARCH_X86_64) && !defined(RTE_ARCH_ARM64) RTE_SET_USED(first); RTE_SET_USED(last); RTE_SET_USED(list); @@ -84,7 +84,7 @@ __rte_stack_lf_pop_elems(struct rte_stack_lf_list *list, void **obj_table, struct rte_stack_lf_elem **last) { -#ifndef RTE_ARCH_X86_64 +#if !defined(RTE_ARCH_X86_64) && !defined(RTE_ARCH_ARM64) RTE_SET_USED(obj_table); RTE_SET_USED(last); RTE_SET_USED(list); -- 2.7.4