From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 46724A046B for ; Thu, 22 Aug 2019 08:35:28 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DDBEC1BF4F; Thu, 22 Aug 2019 08:35:26 +0200 (CEST) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by dpdk.org (Postfix) with ESMTP id 544F31BF4D for ; Thu, 22 Aug 2019 08:35:25 +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 8C73B344; Wed, 21 Aug 2019 23:35:24 -0700 (PDT) Received: from net-arm-c2400-02.shanghai.arm.com (net-arm-c2400-02.shanghai.arm.com [10.169.40.42]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 462233F706; Wed, 21 Aug 2019 23:37:40 -0700 (PDT) From: Ruifeng Wang To: bruce.richardson@intel.com, vladimir.medvedkin@intel.com, olivier.matz@6wind.com Cc: dev@dpdk.org, honnappa.nagarahalli@arm.com, dharmik.thakkar@arm.com, nd@arm.com, Ruifeng Wang Date: Thu, 22 Aug 2019 14:34:54 +0800 Message-Id: <20190822063457.41596-1-ruifeng.wang@arm.com> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [RFC PATCH 0/3] RCU integration with LPM library 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" This patchset integrates RCU QSBR support with LPM library. Document is added with suggested design of integrating RCU library with other libraries in DPDK. As an example, LPM library adds the integration. RCU is used to safely free tbl8 groups that can be recycled. Table will not be reclaimed or reused until reader finished referencing it. New API rte_lpm_rcu_qsbr_add is introduced for application to register a RCU variable that LPM library will use. New API rte_ring_peek is introduced to help on management of reclaiming FIFO queue. Honnappa Nagarahalli (1): doc/rcu: add RCU integration design details Ruifeng Wang (2): lib/ring: add peek API lib/lpm: integrate RCU QSBR doc/guides/prog_guide/rcu_lib.rst | 51 +++++++ lib/librte_lpm/Makefile | 3 +- lib/librte_lpm/meson.build | 2 + lib/librte_lpm/rte_lpm.c | 218 +++++++++++++++++++++++++++-- lib/librte_lpm/rte_lpm.h | 22 +++ lib/librte_lpm/rte_lpm_version.map | 6 + lib/librte_ring/rte_ring.h | 30 ++++ lib/meson.build | 3 +- 8 files changed, 320 insertions(+), 15 deletions(-) -- 2.17.1