This patchset extend next_hop field from 8-bits to 24-bits in LPM library for IPv4.
As next_hop field is increased now the maximum number of tbl8s is 2^24. A new rte_lpm_config structure is used so LPM library will allocate exactly the amount of memory which is necessary to hold application?s rules. Changed structures in LPM library: rte_lpm_tbl24_entry and rte_lpm_tbl8_entry to one structure rte_lpm_tbl_entry. Added versioning symbols to functions and updated library and applications that have a dependency on LPM library. Michal Kobylinski (2): lpm: extend ip4 next_hop and add config structure examples: update to use new lpm lib for ip4 app/test/test_func_reentrancy.c | 9 +- app/test/test_lpm.c | 274 ++++-- app/test/test_mp_secondary.c | 7 +- app/test/test_table_combined.c | 1 + app/test/test_table_tables.c | 2 + doc/guides/rel_notes/release_2_3.rst | 4 + examples/ip_fragmentation/main.c | 23 +- examples/ip_reassembly/main.c | 22 +- examples/l3fwd-power/main.c | 12 +- examples/l3fwd-vf/main.c | 12 +- examples/l3fwd/main.c | 51 +- examples/load_balancer/init.c | 8 +- examples/load_balancer/runtime.c | 2 +- examples/performance-thread/l3fwd-thread/main.c | 10 +- lib/librte_lpm/Makefile | 2 +- lib/librte_lpm/rte_lpm.c | 1157 ++++++++++++++++++++--- lib/librte_lpm/rte_lpm.h | 232 +++-- lib/librte_lpm/rte_lpm_version.map | 49 +- lib/librte_table/rte_table.h | 1 + lib/librte_table/rte_table_lpm.c | 30 +- lib/librte_table/rte_table_lpm.h | 4 + 21 files changed, 1546 insertions(+), 366 deletions(-) -- 1.9.1