From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maciej Gajdzica Subject: [PATCH v2 0/5] pipeline: add bulk add/delete functions for table Date: Fri, 11 Sep 2015 12:31:34 +0200 Message-ID: <1441967499-21255-1-git-send-email-maciejx.t.gajdzica@intel.com> To: dev@dpdk.org Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 3BADE8D9E for ; Fri, 11 Sep 2015 12:35:46 +0200 (CEST) List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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 (5): 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 doc: modify release notes and deprecation notice for table and pipeline app/test/test_table_acl.c | 166 ++++ doc/guides/rel_notes/deprecation.rst | 3 - doc/guides/rel_notes/release_2_2.rst | 6 +- 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/Makefile | 2 +- lib/librte_pipeline/rte_pipeline.c | 106 +++ lib/librte_pipeline/rte_pipeline.h | 62 ++ lib/librte_pipeline/rte_pipeline_version.map | 8 + lib/librte_table/Makefile | 2 +- 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 + 23 files changed, 1835 insertions(+), 13 deletions(-) -- 1.7.9.5