From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 551C2E72 for ; Fri, 11 Sep 2015 11:24:37 +0200 (CEST) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga101.jf.intel.com with ESMTP; 11 Sep 2015 02:24:36 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.17,511,1437462000"; d="scan'208";a="802311978" Received: from unknown (HELO stargo) ([10.217.248.233]) by orsmga002.jf.intel.com with SMTP; 11 Sep 2015 02:24:34 -0700 Received: by stargo (sSMTP sendmail emulation); Fri, 11 Sep 2015 11:22:39 +0200 From: Maciej Gajdzica To: dev@dpdk.org Date: Fri, 11 Sep 2015 11:22:28 +0200 Message-Id: <1441963352-21114-1-git-send-email-maciejx.t.gajdzica@intel.com> X-Mailer: git-send-email 1.9.1 Subject: [dpdk-dev] [PATCH 0/4] pipeline: add bulk add/delete functions for table X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Sep 2015 09:24:37 -0000 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