Re: [PATCH v2 0/2] Increase number of next hops for LPM IPv4
From: Xu, HuilongX <hidden>
Date: 2016-02-26 07:35:55
Tested-by: huilong xu <redacted> Run two unit case, are all passed. Test environment: OS: Linux ub12 3.13.0-32-generic #57~precise1-Ubuntu SMP Tue Jul 15 03:51:20 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux Gcc: gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) Package: dpdk.org next branch + patch NIC: 09:00.0 Ethernet controller [0200]: Intel Corporation 82599EB 10-Gigabit SFI/SFP+ Network Connection [8086:10fb] (rev 01) Target: x86_64-native-linuxapp-gcc Test steps: 1. compile dpdk make install -j T=x86_64-native-linuxapp-gcc 2.install and bind dpdk modprobe uio insmod ./x86_64-native-linuxapp-gcc/kmod/igb_uio.ko 3.set hugepage mkdir -p /mnt/huge mount -t hugetlbfs nodev /mnt/huge echo 4096 >/sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages 4. run test app ./x86_64-native-linuxapp-gcc/app/test -c f -n 4 -- -i 5. exec unit case lpm_autotest table_autotest
-----Original Message----- From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Michal Kobylinski Sent: Friday, January 29, 2016 8:13 PM To: dev@dpdk.org Subject: [dpdk-dev] [PATCH v2 0/2] Increase number of next hops for LPM IPv4 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