[dpdk-dev] [PATCH 0/4] pipeline: add bulk add/delete functions for table

Maciej Gajdzica maciejx.t.gajdzica at intel.com
Fri Sep 11 11:22:28 CEST 2015


This patch adds bulk add/delete functions for tables used by pipelines. It
allows for adding/deleting many rules to pipeline tables in one function call.
It is particulary useful for firewall pipeline which is using ACL table. After
every add or delete, table is rebuild which leads to very long times when
trying to add/delete many entries.

Maciej Gajdzica (4):
  table: added bulk add/delete functions for table
  pipeline: added bulk add/delete functions for table
  test_table: added check for bulk add/delete to acl table unit test
  ip_pipeline: added cli commands for bulk add/delete to firewall
    pipeline

 app/test/test_table_acl.c                          |  166 ++++
 examples/ip_pipeline/pipeline/pipeline_firewall.c  |  858 ++++++++++++++++++++
 examples/ip_pipeline/pipeline/pipeline_firewall.h  |   14 +
 .../ip_pipeline/pipeline/pipeline_firewall_be.c    |  157 ++++
 .../ip_pipeline/pipeline/pipeline_firewall_be.h    |   38 +
 lib/librte_pipeline/rte_pipeline.c                 |  106 +++
 lib/librte_pipeline/rte_pipeline.h                 |   62 ++
 lib/librte_table/rte_table.h                       |   85 +-
 lib/librte_table/rte_table_acl.c                   |  309 +++++++
 lib/librte_table/rte_table_array.c                 |    2 +
 lib/librte_table/rte_table_hash_ext.c              |    4 +
 lib/librte_table/rte_table_hash_key16.c            |    4 +
 lib/librte_table/rte_table_hash_key32.c            |    4 +
 lib/librte_table/rte_table_hash_key8.c             |    8 +
 lib/librte_table/rte_table_hash_lru.c              |    4 +
 lib/librte_table/rte_table_lpm.c                   |    2 +
 lib/librte_table/rte_table_lpm_ipv6.c              |    2 +
 lib/librte_table/rte_table_stub.c                  |    2 +
 18 files changed, 1821 insertions(+), 6 deletions(-)

-- 
1.7.9.5



More information about the dev mailing list