From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bruce Richardson Subject: Re: [PATCH v4 0/4] lib/rib: Add Routing Information Base library Date: Fri, 29 Jun 2018 16:48:21 +0100 Message-ID: <20180629154821.GA17756@bricha3-MOBL.ger.corp.intel.com> References: <1524780214-23196-1-git-send-email-medvedkinv@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: dev@dpdk.org, thomas@monjalon.net, cristian.dumitrescu@intel.com To: Medvedkin Vladimir Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id 2D0FB1B4C9 for ; Fri, 29 Jun 2018 17:48:33 +0200 (CEST) Content-Disposition: inline In-Reply-To: <1524780214-23196-1-git-send-email-medvedkinv@gmail.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Fri, Apr 27, 2018 at 01:03:30AM +0300, Medvedkin Vladimir wrote: > This patch series introduces new library librte_rib which potentially could > replace librte_lpm. > > RIB is an alternative to current LPM library. > It solves the following problems > - Increases the speed of control plane operations against lpm such as > adding/deleting routes > - Adds abstraction from dataplane algorithms, so it is possible to add > different ip route lookup algorythms such as DXR/poptrie/lpc-trie/etc > in addition to current dir24_8 > - It is possible to keep user defined application specific additional > information in struct rte_rib_node which represents route entry. > It can be next hop/set of next hops (i.e. active and feasible), > pointers to link rte_rib_node based on some criteria (i.e. next_hop), > plenty of additional control plane information. > > v4: > fix various bugs > make struct rte_rib opaque > make inline functions instead of macro > remove RTE_RIB_MALLOC node allocation type > add new lookup functions > remove rte_dir24_8_lookup() > add rte_dir24_8_get_lookup() > add meson support > add fib configuration > > > Medvedkin Vladimir (4): > Add RIB library > Add dir24_8 implementation for rib library > Add autotests for RIB library > Add support for lpm and rib bulk lookup > Some general comments on this set: * run checkpatches and check-git-log from devtools on the set, a number of warnings are thrown up by both [e.g. no initial-caps for patch titles] * before merge to DPDK this probably needs to be split up into smaller patches with more limited set of functionality in each one. For example, the create/destroy, add/delete and lookup functions can probably go in separate patches to make reviews easier.