From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 9718A7CFD for ; Wed, 14 Mar 2018 12:58:25 +0100 (CET) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 Mar 2018 04:58:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.47,470,1515484800"; d="scan'208";a="211462697" Received: from bricha3-mobl.ger.corp.intel.com ([10.237.221.118]) by fmsmga005.fm.intel.com with SMTP; 14 Mar 2018 04:58:21 -0700 Received: by (sSMTP sendmail emulation); Wed, 14 Mar 2018 11:58:20 +0000 Date: Wed, 14 Mar 2018 11:58:20 +0000 From: Bruce Richardson To: Medvedkin Vladimir Cc: dev@dpdk.org, thomas@monjalon.net Message-ID: <20180314115820.GA9296@bricha3-MOBL.ger.corp.intel.com> References: <1519339856-683-1-git-send-email-medvedkinv@gmail.com> <1519339856-683-2-git-send-email-medvedkinv@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1519339856-683-2-git-send-email-medvedkinv@gmail.com> Organization: Intel Research and Development Ireland Ltd. User-Agent: Mutt/1.9.4 (2018-02-28) Subject: Re: [dpdk-dev] [PATCH v3 1/2] Add RIB 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: , X-List-Received-Date: Wed, 14 Mar 2018 11:58:27 -0000 On Thu, Feb 22, 2018 at 10:50:55PM +0000, Medvedkin Vladimir wrote: > 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. > - For dir24_8 implementation it is possible to remove > rte_lpm_tbl_entry.depth field that helps to save 6 bits. > - Also new dir24_8 implementation supports different next_hop sizes > (1/2/4/8 bytes per next hop) > - Removed RTE_LPM_LOOKUP_SUCCESS to save 1 bit and to eleminate > ternary operator. > Instead it returns special default value if there is no route. > > Signed-off-by: Medvedkin Vladimir > --- > config/common_base | 6 + > doc/api/doxy-api.conf | 1 + > lib/Makefile | 2 + > lib/librte_rib/Makefile | 23 ++ > lib/librte_rib/rte_dir24_8.c | 482 +++++++++++++++++++++++++++++++++ > lib/librte_rib/rte_dir24_8.h | 115 ++++++++ > lib/librte_rib/rte_rib.c | 526 +++++++++++++++++++++++++++++++++++++ > lib/librte_rib/rte_rib.h | 322 +++++++++++++++++++++++ > lib/librte_rib/rte_rib_version.map | 18 ++ > mk/rte.app.mk | 1 + > 10 files changed, 1496 insertions(+) > create mode 100644 lib/librte_rib/Makefile > create mode 100644 lib/librte_rib/rte_dir24_8.c > create mode 100644 lib/librte_rib/rte_dir24_8.h > create mode 100644 lib/librte_rib/rte_rib.c > create mode 100644 lib/librte_rib/rte_rib.h > create mode 100644 lib/librte_rib/rte_rib_version.map > Sorry, I didn't see there was a V3, so made comments to V2. Hopefully the comments all still apply. For future versions, please include a diff log below the cut-line so that we can see what changes between each version. Thanks, /Bruce