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.

