[dpdk-dev] [PATCH v2 0/2] Increase number of next hops for LPM IPv4

Xu, HuilongX huilongx.xu at intel.com
Fri Feb 26 08:35:51 CET 2016


Tested-by: huilong xu <huilongx.xu at intel.com>
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 at dpdk.org] On Behalf Of Michal Kobylinski
> Sent: Friday, January 29, 2016 8:13 PM
> To: dev at 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



More information about the dev mailing list