get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/30530/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 30530,
    "url": "https://patches.dpdk.org/api/patches/30530/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/1508339034-171115-3-git-send-email-cristian.dumitrescu@intel.com/",
    "project": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<1508339034-171115-3-git-send-email-cristian.dumitrescu@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1508339034-171115-3-git-send-email-cristian.dumitrescu@intel.com",
    "date": "2017-10-18T15:03:19",
    "name": "[dpdk-dev,v3,02/18] librte_table: remove deprecated 8-byte key hash tables",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "9d1ff740dae1bd2555cc2fd87029748db3e69399",
    "submitter": {
        "id": 19,
        "url": "https://patches.dpdk.org/api/people/19/?format=api",
        "name": "Cristian Dumitrescu",
        "email": "cristian.dumitrescu@intel.com"
    },
    "delegate": null,
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/1508339034-171115-3-git-send-email-cristian.dumitrescu@intel.com/mbox/",
    "series": [],
    "comments": "https://patches.dpdk.org/api/patches/30530/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/30530/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 2CAFF1B1A2;\n\tWed, 18 Oct 2017 17:04:05 +0200 (CEST)",
            "from mga11.intel.com (mga11.intel.com [192.55.52.93])\n\tby dpdk.org (Postfix) with ESMTP id D25021B161\n\tfor <dev@dpdk.org>; Wed, 18 Oct 2017 17:03:58 +0200 (CEST)",
            "from orsmga004.jf.intel.com ([10.7.209.38])\n\tby fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t18 Oct 2017 08:03:58 -0700",
            "from silpixa00382658.ir.intel.com ([10.237.223.29])\n\tby orsmga004.jf.intel.com with ESMTP; 18 Oct 2017 08:03:57 -0700"
        ],
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.43,397,1503385200\"; d=\"scan'208\";a=\"139672949\"",
        "From": "Cristian Dumitrescu <cristian.dumitrescu@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "thomas@monjalon.net",
        "Date": "Wed, 18 Oct 2017 16:03:19 +0100",
        "Message-Id": "<1508339034-171115-3-git-send-email-cristian.dumitrescu@intel.com>",
        "X-Mailer": "git-send-email 2.7.4",
        "In-Reply-To": "<1508339034-171115-1-git-send-email-cristian.dumitrescu@intel.com>",
        "References": "<1507634341-72277-2-git-send-email-cristian.dumitrescu@intel.com>\n\t<1508339034-171115-1-git-send-email-cristian.dumitrescu@intel.com>",
        "Subject": "[dpdk-dev] [PATCH v3 02/18] librte_table: remove deprecated 8-byte\n\tkey hash tables",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "The non-dosig version of the 8-byte key hash tables (both extendable\nbucket and LRU) are removed. The remaining hash tables are renamed to\neliminate the dosig particle from their name.\n\nSigned-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>\n---\n .../pipeline/pipeline_flow_classification_be.c     |   2 +-\n .../ip_pipeline/pipeline/pipeline_routing_be.c     |   2 +-\n lib/librte_table/rte_table_hash.h                  |   9 -\n lib/librte_table/rte_table_hash_key8.c             | 340 +--------------------\n test/test-pipeline/pipeline_hash.c                 |   4 +-\n test/test/test_table_combined.c                    |  14 +-\n test/test/test_table_tables.c                      |   8 +-\n 7 files changed, 21 insertions(+), 358 deletions(-)",
    "diff": "diff --git a/examples/ip_pipeline/pipeline/pipeline_flow_classification_be.c b/examples/ip_pipeline/pipeline/pipeline_flow_classification_be.c\nindex 5e993c3..485ebcb 100755\n--- a/examples/ip_pipeline/pipeline/pipeline_flow_classification_be.c\n+++ b/examples/ip_pipeline/pipeline/pipeline_flow_classification_be.c\n@@ -542,7 +542,7 @@ static void *pipeline_fc_init(struct pipeline_params *params,\n \n \t\tswitch (p_fc->key_size) {\n \t\tcase 8:\n-\t\t\ttable_params.ops = &rte_table_hash_key8_ext_dosig_ops;\n+\t\t\ttable_params.ops = &rte_table_hash_key8_ext_ops;\n \t\t\ttable_params.arg_create = &table_hash_key8_params;\n \t\t\tbreak;\n \ndiff --git a/examples/ip_pipeline/pipeline/pipeline_routing_be.c b/examples/ip_pipeline/pipeline/pipeline_routing_be.c\nindex 7831716..aa7f05e 100644\n--- a/examples/ip_pipeline/pipeline/pipeline_routing_be.c\n+++ b/examples/ip_pipeline/pipeline/pipeline_routing_be.c\n@@ -1359,7 +1359,7 @@ pipeline_routing_init(struct pipeline_params *params,\n \t\t};\n \n \t\tstruct rte_pipeline_table_params table_params = {\n-\t\t\t.ops = &rte_table_hash_key8_ext_dosig_ops,\n+\t\t\t.ops = &rte_table_hash_key8_ext_ops,\n \t\t\t.arg_create = &table_arp_params,\n \t\t\t.f_action_hit = get_arp_table_ah_hit(p_rt),\n \t\t\t.f_action_miss = NULL,\ndiff --git a/lib/librte_table/rte_table_hash.h b/lib/librte_table/rte_table_hash.h\nindex 57505a6..8ad812c 100644\n--- a/lib/librte_table/rte_table_hash.h\n+++ b/lib/librte_table/rte_table_hash.h\n@@ -201,12 +201,8 @@ struct rte_table_hash_key8_lru_params {\n \tuint8_t *key_mask;\n };\n \n-/** LRU hash table operations for pre-computed key signature */\n extern struct rte_table_ops rte_table_hash_key8_lru_ops;\n \n-/** LRU hash table operations for key signature computed on lookup (\"do-sig\") */\n-extern struct rte_table_ops rte_table_hash_key8_lru_dosig_ops;\n-\n /** Extendible bucket hash table parameters */\n struct rte_table_hash_key8_ext_params {\n \t/** Maximum number of entries (and keys) in the table */\n@@ -234,13 +230,8 @@ struct rte_table_hash_key8_ext_params {\n \tuint8_t *key_mask;\n };\n \n-/** Extendible bucket hash table operations for pre-computed key signature */\n extern struct rte_table_ops rte_table_hash_key8_ext_ops;\n \n-/** Extendible bucket hash table operations for key signature computed on\n-    lookup (\"do-sig\") */\n-extern struct rte_table_ops rte_table_hash_key8_ext_dosig_ops;\n-\n /**\n  * 16-byte key hash tables\n  *\ndiff --git a/lib/librte_table/rte_table_hash_key8.c b/lib/librte_table/rte_table_hash_key8.c\nindex 5f0c656..f2b285d 100644\n--- a/lib/librte_table/rte_table_hash_key8.c\n+++ b/lib/librte_table/rte_table_hash_key8.c\n@@ -583,18 +583,6 @@ rte_table_hash_entry_delete_key8_ext(\n \n #define lookup1_stage1(mbuf1, bucket1, f)\t\t\t\\\n {\t\t\t\t\t\t\t\t\\\n-\tuint64_t signature;\t\t\t\t\t\\\n-\tuint32_t bucket_index;\t\t\t\t\t\\\n-\t\t\t\t\t\t\t\t\\\n-\tsignature = RTE_MBUF_METADATA_UINT32(mbuf1, f->signature_offset);\\\n-\tbucket_index = signature & (f->n_buckets - 1);\t\t\\\n-\tbucket1 = (struct rte_bucket_4_8 *)\t\t\t\\\n-\t\t&f->memory[bucket_index * f->bucket_size];\t\\\n-\trte_prefetch0(bucket1);\t\t\t\t\t\\\n-}\n-\n-#define lookup1_stage1_dosig(mbuf1, bucket1, f)\t\t\t\\\n-{\t\t\t\t\t\t\t\t\\\n \tuint64_t *key;\t\t\t\t\t\t\\\n \tuint64_t signature;\t\t\t\t\t\\\n \tuint32_t bucket_index;\t\t\t\t\t\\\n@@ -738,25 +726,7 @@ rte_table_hash_entry_delete_key8_ext(\n \trte_prefetch0(RTE_MBUF_METADATA_UINT8_PTR(mbuf01, key_offset));\\\n }\n \n-#define lookup2_stage1(mbuf10, mbuf11, bucket10, bucket11, f)\t\\\n-{\t\t\t\t\t\t\t\t\\\n-\tuint64_t signature10, signature11;\t\t\t\\\n-\tuint32_t bucket10_index, bucket11_index;\t\t\\\n-\t\t\t\t\t\t\t\t\\\n-\tsignature10 = RTE_MBUF_METADATA_UINT32(mbuf10, f->signature_offset);\\\n-\tbucket10_index = signature10 & (f->n_buckets - 1);\t\\\n-\tbucket10 = (struct rte_bucket_4_8 *)\t\t\t\\\n-\t\t&f->memory[bucket10_index * f->bucket_size];\t\\\n-\trte_prefetch0(bucket10);\t\t\t\t\\\n-\t\t\t\t\t\t\t\t\\\n-\tsignature11 = RTE_MBUF_METADATA_UINT32(mbuf11, f->signature_offset);\\\n-\tbucket11_index = signature11 & (f->n_buckets - 1);\t\\\n-\tbucket11 = (struct rte_bucket_4_8 *)\t\t\t\\\n-\t\t&f->memory[bucket11_index * f->bucket_size];\t\\\n-\trte_prefetch0(bucket11);\t\t\t\t\\\n-}\n-\n-#define lookup2_stage1_dosig(mbuf10, mbuf11, bucket10, bucket11, f)\\\n+#define lookup2_stage1(mbuf10, mbuf11, bucket10, bucket11, f)\\\n {\t\t\t\t\t\t\t\t\\\n \tuint64_t *key10, *key11;\t\t\t\t\\\n \tuint64_t hash_offset_buffer10;\t\t\t\t\\\n@@ -871,8 +841,8 @@ rte_table_hash_lookup_key8_lru(\n \tstruct rte_table_hash *f = (struct rte_table_hash *) table;\n \tstruct rte_bucket_4_8 *bucket10, *bucket11, *bucket20, *bucket21;\n \tstruct rte_mbuf *mbuf00, *mbuf01, *mbuf10, *mbuf11, *mbuf20, *mbuf21;\n-\tuint32_t pkt00_index, pkt01_index, pkt10_index,\n-\t\t\tpkt11_index, pkt20_index, pkt21_index;\n+\tuint32_t pkt00_index, pkt01_index, pkt10_index;\n+\tuint32_t pkt11_index, pkt20_index, pkt21_index;\n \tuint64_t pkts_mask_out = 0;\n \n \t__rte_unused uint32_t n_pkts_in = __builtin_popcountll(pkts_mask);\n@@ -888,7 +858,7 @@ rte_table_hash_lookup_key8_lru(\n \t\t\tlookup1_stage0(pkt_index, mbuf, pkts, pkts_mask, f);\n \t\t\tlookup1_stage1(mbuf, bucket, f);\n \t\t\tlookup1_stage2_lru(pkt_index, mbuf, bucket,\n-\t\t\t\t\tpkts_mask_out, entries, f);\n+\t\t\t\tpkts_mask_out, entries, f);\n \t\t}\n \n \t\t*lookup_hit_mask = pkts_mask_out;\n@@ -987,132 +957,6 @@ rte_table_hash_lookup_key8_lru(\n } /* rte_table_hash_lookup_key8_lru() */\n \n static int\n-rte_table_hash_lookup_key8_lru_dosig(\n-\tvoid *table,\n-\tstruct rte_mbuf **pkts,\n-\tuint64_t pkts_mask,\n-\tuint64_t *lookup_hit_mask,\n-\tvoid **entries)\n-{\n-\tstruct rte_table_hash *f = (struct rte_table_hash *) table;\n-\tstruct rte_bucket_4_8 *bucket10, *bucket11, *bucket20, *bucket21;\n-\tstruct rte_mbuf *mbuf00, *mbuf01, *mbuf10, *mbuf11, *mbuf20, *mbuf21;\n-\tuint32_t pkt00_index, pkt01_index, pkt10_index;\n-\tuint32_t pkt11_index, pkt20_index, pkt21_index;\n-\tuint64_t pkts_mask_out = 0;\n-\n-\t__rte_unused uint32_t n_pkts_in = __builtin_popcountll(pkts_mask);\n-\tRTE_TABLE_HASH_KEY8_STATS_PKTS_IN_ADD(f, n_pkts_in);\n-\n-\t/* Cannot run the pipeline with less than 5 packets */\n-\tif (__builtin_popcountll(pkts_mask) < 5) {\n-\t\tfor ( ; pkts_mask; ) {\n-\t\t\tstruct rte_bucket_4_8 *bucket;\n-\t\t\tstruct rte_mbuf *mbuf;\n-\t\t\tuint32_t pkt_index;\n-\n-\t\t\tlookup1_stage0(pkt_index, mbuf, pkts, pkts_mask, f);\n-\t\t\tlookup1_stage1_dosig(mbuf, bucket, f);\n-\t\t\tlookup1_stage2_lru(pkt_index, mbuf, bucket,\n-\t\t\t\tpkts_mask_out, entries, f);\n-\t\t}\n-\n-\t\t*lookup_hit_mask = pkts_mask_out;\n-\t\tRTE_TABLE_HASH_KEY8_STATS_PKTS_LOOKUP_MISS(f, n_pkts_in - __builtin_popcountll(pkts_mask_out));\n-\t\treturn 0;\n-\t}\n-\n-\t/*\n-\t * Pipeline fill\n-\t *\n-\t */\n-\t/* Pipeline stage 0 */\n-\tlookup2_stage0(pkt00_index, pkt01_index, mbuf00, mbuf01, pkts,\n-\t\tpkts_mask, f);\n-\n-\t/* Pipeline feed */\n-\tmbuf10 = mbuf00;\n-\tmbuf11 = mbuf01;\n-\tpkt10_index = pkt00_index;\n-\tpkt11_index = pkt01_index;\n-\n-\t/* Pipeline stage 0 */\n-\tlookup2_stage0(pkt00_index, pkt01_index, mbuf00, mbuf01, pkts,\n-\t\tpkts_mask, f);\n-\n-\t/* Pipeline stage 1 */\n-\tlookup2_stage1_dosig(mbuf10, mbuf11, bucket10, bucket11, f);\n-\n-\t/*\n-\t * Pipeline run\n-\t *\n-\t */\n-\tfor ( ; pkts_mask; ) {\n-\t\t/* Pipeline feed */\n-\t\tbucket20 = bucket10;\n-\t\tbucket21 = bucket11;\n-\t\tmbuf20 = mbuf10;\n-\t\tmbuf21 = mbuf11;\n-\t\tmbuf10 = mbuf00;\n-\t\tmbuf11 = mbuf01;\n-\t\tpkt20_index = pkt10_index;\n-\t\tpkt21_index = pkt11_index;\n-\t\tpkt10_index = pkt00_index;\n-\t\tpkt11_index = pkt01_index;\n-\n-\t\t/* Pipeline stage 0 */\n-\t\tlookup2_stage0_with_odd_support(pkt00_index, pkt01_index,\n-\t\t\tmbuf00, mbuf01, pkts, pkts_mask, f);\n-\n-\t\t/* Pipeline stage 1 */\n-\t\tlookup2_stage1_dosig(mbuf10, mbuf11, bucket10, bucket11, f);\n-\n-\t\t/* Pipeline stage 2 */\n-\t\tlookup2_stage2_lru(pkt20_index, pkt21_index, mbuf20, mbuf21,\n-\t\t\tbucket20, bucket21, pkts_mask_out, entries, f);\n-\t}\n-\n-\t/*\n-\t * Pipeline flush\n-\t *\n-\t */\n-\t/* Pipeline feed */\n-\tbucket20 = bucket10;\n-\tbucket21 = bucket11;\n-\tmbuf20 = mbuf10;\n-\tmbuf21 = mbuf11;\n-\tmbuf10 = mbuf00;\n-\tmbuf11 = mbuf01;\n-\tpkt20_index = pkt10_index;\n-\tpkt21_index = pkt11_index;\n-\tpkt10_index = pkt00_index;\n-\tpkt11_index = pkt01_index;\n-\n-\t/* Pipeline stage 1 */\n-\tlookup2_stage1_dosig(mbuf10, mbuf11, bucket10, bucket11, f);\n-\n-\t/* Pipeline stage 2 */\n-\tlookup2_stage2_lru(pkt20_index, pkt21_index, mbuf20, mbuf21,\n-\t\tbucket20, bucket21, pkts_mask_out, entries, f);\n-\n-\t/* Pipeline feed */\n-\tbucket20 = bucket10;\n-\tbucket21 = bucket11;\n-\tmbuf20 = mbuf10;\n-\tmbuf21 = mbuf11;\n-\tpkt20_index = pkt10_index;\n-\tpkt21_index = pkt11_index;\n-\n-\t/* Pipeline stage 2 */\n-\tlookup2_stage2_lru(pkt20_index, pkt21_index, mbuf20, mbuf21,\n-\t\tbucket20, bucket21, pkts_mask_out, entries, f);\n-\n-\t*lookup_hit_mask = pkts_mask_out;\n-\tRTE_TABLE_HASH_KEY8_STATS_PKTS_LOOKUP_MISS(f, n_pkts_in - __builtin_popcountll(pkts_mask_out));\n-\treturn 0;\n-} /* rte_table_hash_lookup_key8_lru_dosig() */\n-\n-static int\n rte_table_hash_lookup_key8_ext(\n \tvoid *table,\n \tstruct rte_mbuf **pkts,\n@@ -1142,8 +986,8 @@ rte_table_hash_lookup_key8_ext(\n \t\t\tlookup1_stage0(pkt_index, mbuf, pkts, pkts_mask, f);\n \t\t\tlookup1_stage1(mbuf, bucket, f);\n \t\t\tlookup1_stage2_ext(pkt_index, mbuf, bucket,\n-\t\t\t\tpkts_mask_out, entries, buckets_mask, buckets,\n-\t\t\t\tkeys, f);\n+\t\t\t\tpkts_mask_out, entries, buckets_mask,\n+\t\t\t\tbuckets, keys, f);\n \t\t}\n \n \t\tgoto grind_next_buckets;\n@@ -1263,156 +1107,6 @@ rte_table_hash_lookup_key8_ext(\n } /* rte_table_hash_lookup_key8_ext() */\n \n static int\n-rte_table_hash_lookup_key8_ext_dosig(\n-\tvoid *table,\n-\tstruct rte_mbuf **pkts,\n-\tuint64_t pkts_mask,\n-\tuint64_t *lookup_hit_mask,\n-\tvoid **entries)\n-{\n-\tstruct rte_table_hash *f = (struct rte_table_hash *) table;\n-\tstruct rte_bucket_4_8 *bucket10, *bucket11, *bucket20, *bucket21;\n-\tstruct rte_mbuf *mbuf00, *mbuf01, *mbuf10, *mbuf11, *mbuf20, *mbuf21;\n-\tuint32_t pkt00_index, pkt01_index, pkt10_index;\n-\tuint32_t pkt11_index, pkt20_index, pkt21_index;\n-\tuint64_t pkts_mask_out = 0, buckets_mask = 0;\n-\tstruct rte_bucket_4_8 *buckets[RTE_PORT_IN_BURST_SIZE_MAX];\n-\tuint64_t *keys[RTE_PORT_IN_BURST_SIZE_MAX];\n-\n-\t__rte_unused uint32_t n_pkts_in = __builtin_popcountll(pkts_mask);\n-\tRTE_TABLE_HASH_KEY8_STATS_PKTS_IN_ADD(f, n_pkts_in);\n-\n-\t/* Cannot run the pipeline with less than 5 packets */\n-\tif (__builtin_popcountll(pkts_mask) < 5) {\n-\t\tfor ( ; pkts_mask; ) {\n-\t\t\tstruct rte_bucket_4_8 *bucket;\n-\t\t\tstruct rte_mbuf *mbuf;\n-\t\t\tuint32_t pkt_index;\n-\n-\t\t\tlookup1_stage0(pkt_index, mbuf, pkts, pkts_mask, f);\n-\t\t\tlookup1_stage1_dosig(mbuf, bucket, f);\n-\t\t\tlookup1_stage2_ext(pkt_index, mbuf, bucket,\n-\t\t\t\tpkts_mask_out, entries, buckets_mask,\n-\t\t\t\tbuckets, keys, f);\n-\t\t}\n-\n-\t\tgoto grind_next_buckets;\n-\t}\n-\n-\t/*\n-\t * Pipeline fill\n-\t *\n-\t */\n-\t/* Pipeline stage 0 */\n-\tlookup2_stage0(pkt00_index, pkt01_index, mbuf00, mbuf01, pkts,\n-\t\tpkts_mask, f);\n-\n-\t/* Pipeline feed */\n-\tmbuf10 = mbuf00;\n-\tmbuf11 = mbuf01;\n-\tpkt10_index = pkt00_index;\n-\tpkt11_index = pkt01_index;\n-\n-\t/* Pipeline stage 0 */\n-\tlookup2_stage0(pkt00_index, pkt01_index, mbuf00, mbuf01, pkts,\n-\t\tpkts_mask, f);\n-\n-\t/* Pipeline stage 1 */\n-\tlookup2_stage1_dosig(mbuf10, mbuf11, bucket10, bucket11, f);\n-\n-\t/*\n-\t * Pipeline run\n-\t *\n-\t */\n-\tfor ( ; pkts_mask; ) {\n-\t\t/* Pipeline feed */\n-\t\tbucket20 = bucket10;\n-\t\tbucket21 = bucket11;\n-\t\tmbuf20 = mbuf10;\n-\t\tmbuf21 = mbuf11;\n-\t\tmbuf10 = mbuf00;\n-\t\tmbuf11 = mbuf01;\n-\t\tpkt20_index = pkt10_index;\n-\t\tpkt21_index = pkt11_index;\n-\t\tpkt10_index = pkt00_index;\n-\t\tpkt11_index = pkt01_index;\n-\n-\t\t/* Pipeline stage 0 */\n-\t\tlookup2_stage0_with_odd_support(pkt00_index, pkt01_index,\n-\t\t\tmbuf00, mbuf01, pkts, pkts_mask, f);\n-\n-\t\t/* Pipeline stage 1 */\n-\t\tlookup2_stage1_dosig(mbuf10, mbuf11, bucket10, bucket11, f);\n-\n-\t\t/* Pipeline stage 2 */\n-\t\tlookup2_stage2_ext(pkt20_index, pkt21_index, mbuf20, mbuf21,\n-\t\t\tbucket20, bucket21, pkts_mask_out, entries,\n-\t\t\tbuckets_mask, buckets, keys, f);\n-\t}\n-\n-\t/*\n-\t * Pipeline flush\n-\t *\n-\t */\n-\t/* Pipeline feed */\n-\tbucket20 = bucket10;\n-\tbucket21 = bucket11;\n-\tmbuf20 = mbuf10;\n-\tmbuf21 = mbuf11;\n-\tmbuf10 = mbuf00;\n-\tmbuf11 = mbuf01;\n-\tpkt20_index = pkt10_index;\n-\tpkt21_index = pkt11_index;\n-\tpkt10_index = pkt00_index;\n-\tpkt11_index = pkt01_index;\n-\n-\t/* Pipeline stage 1 */\n-\tlookup2_stage1_dosig(mbuf10, mbuf11, bucket10, bucket11, f);\n-\n-\t/* Pipeline stage 2 */\n-\tlookup2_stage2_ext(pkt20_index, pkt21_index, mbuf20, mbuf21,\n-\t\tbucket20, bucket21, pkts_mask_out, entries,\n-\t\tbuckets_mask, buckets, keys, f);\n-\n-\t/* Pipeline feed */\n-\tbucket20 = bucket10;\n-\tbucket21 = bucket11;\n-\tmbuf20 = mbuf10;\n-\tmbuf21 = mbuf11;\n-\tpkt20_index = pkt10_index;\n-\tpkt21_index = pkt11_index;\n-\n-\t/* Pipeline stage 2 */\n-\tlookup2_stage2_ext(pkt20_index, pkt21_index, mbuf20, mbuf21,\n-\t\tbucket20, bucket21, pkts_mask_out, entries,\n-\t\tbuckets_mask, buckets, keys, f);\n-\n-grind_next_buckets:\n-\t/* Grind next buckets */\n-\tfor ( ; buckets_mask; ) {\n-\t\tuint64_t buckets_mask_next = 0;\n-\n-\t\tfor ( ; buckets_mask; ) {\n-\t\t\tuint64_t pkt_mask;\n-\t\t\tuint32_t pkt_index;\n-\n-\t\t\tpkt_index = __builtin_ctzll(buckets_mask);\n-\t\t\tpkt_mask = 1LLU << pkt_index;\n-\t\t\tbuckets_mask &= ~pkt_mask;\n-\n-\t\t\tlookup_grinder(pkt_index, buckets, keys, pkts_mask_out,\n-\t\t\t\tentries, buckets_mask_next, f);\n-\t\t}\n-\n-\t\tbuckets_mask = buckets_mask_next;\n-\t}\n-\n-\t*lookup_hit_mask = pkts_mask_out;\n-\tRTE_TABLE_HASH_KEY8_STATS_PKTS_LOOKUP_MISS(f, n_pkts_in - __builtin_popcountll(pkts_mask_out));\n-\treturn 0;\n-} /* rte_table_hash_lookup_key8_dosig_ext() */\n-\n-static int\n rte_table_hash_key8_stats_read(void *table, struct rte_table_stats *stats, int clear)\n {\n \tstruct rte_table_hash *t = table;\n@@ -1437,17 +1131,6 @@ struct rte_table_ops rte_table_hash_key8_lru_ops = {\n \t.f_stats = rte_table_hash_key8_stats_read,\n };\n \n-struct rte_table_ops rte_table_hash_key8_lru_dosig_ops = {\n-\t.f_create = rte_table_hash_create_key8_lru,\n-\t.f_free = rte_table_hash_free_key8_lru,\n-\t.f_add = rte_table_hash_entry_add_key8_lru,\n-\t.f_delete = rte_table_hash_entry_delete_key8_lru,\n-\t.f_add_bulk = NULL,\n-\t.f_delete_bulk = NULL,\n-\t.f_lookup = rte_table_hash_lookup_key8_lru_dosig,\n-\t.f_stats = rte_table_hash_key8_stats_read,\n-};\n-\n struct rte_table_ops rte_table_hash_key8_ext_ops = {\n \t.f_create = rte_table_hash_create_key8_ext,\n \t.f_free = rte_table_hash_free_key8_ext,\n@@ -1458,14 +1141,3 @@ struct rte_table_ops rte_table_hash_key8_ext_ops = {\n \t.f_lookup = rte_table_hash_lookup_key8_ext,\n \t.f_stats = rte_table_hash_key8_stats_read,\n };\n-\n-struct rte_table_ops rte_table_hash_key8_ext_dosig_ops = {\n-\t.f_create = rte_table_hash_create_key8_ext,\n-\t.f_free = rte_table_hash_free_key8_ext,\n-\t.f_add = rte_table_hash_entry_add_key8_ext,\n-\t.f_delete = rte_table_hash_entry_delete_key8_ext,\n-\t.f_add_bulk = NULL,\n-\t.f_delete_bulk = NULL,\n-\t.f_lookup = rte_table_hash_lookup_key8_ext_dosig,\n-\t.f_stats = rte_table_hash_key8_stats_read,\n-};\ndiff --git a/test/test-pipeline/pipeline_hash.c b/test/test-pipeline/pipeline_hash.c\nindex 6d27f33..8f384fa 100644\n--- a/test/test-pipeline/pipeline_hash.c\n+++ b/test/test-pipeline/pipeline_hash.c\n@@ -241,7 +241,7 @@ app_main_loop_worker_pipeline_hash(void) {\n \t\t};\n \n \t\tstruct rte_pipeline_table_params table_params = {\n-\t\t\t.ops = &rte_table_hash_key8_ext_dosig_ops,\n+\t\t\t.ops = &rte_table_hash_key8_ext_ops,\n \t\t\t.arg_create = &table_hash_params,\n \t\t\t.f_action_hit = NULL,\n \t\t\t.f_action_miss = NULL,\n@@ -266,7 +266,7 @@ app_main_loop_worker_pipeline_hash(void) {\n \t\t};\n \n \t\tstruct rte_pipeline_table_params table_params = {\n-\t\t\t.ops = &rte_table_hash_key8_lru_dosig_ops,\n+\t\t\t.ops = &rte_table_hash_key8_lru_ops,\n \t\t\t.arg_create = &table_hash_params,\n \t\t\t.f_action_hit = NULL,\n \t\t\t.f_action_miss = NULL,\ndiff --git a/test/test/test_table_combined.c b/test/test/test_table_combined.c\nindex a337a59..680454f 100644\n--- a/test/test/test_table_combined.c\n+++ b/test/test/test_table_combined.c\n@@ -469,7 +469,7 @@ test_table_hash8lru(void)\n \ttable_packets.n_hit_packets = 50;\n \ttable_packets.n_miss_packets = 50;\n \n-\tstatus = test_table_type(&rte_table_hash_key8_lru_dosig_ops,\n+\tstatus = test_table_type(&rte_table_hash_key8_lru_ops,\n \t\t(void *)&key8lru_params, (void *)key8lru, &table_packets,\n \t\t\tNULL, 0);\n \tVERIFY(status, CHECK_TABLE_OK);\n@@ -477,7 +477,7 @@ test_table_hash8lru(void)\n \t/* Invalid parameters */\n \tkey8lru_params.n_entries = 0;\n \n-\tstatus = test_table_type(&rte_table_hash_key8_lru_dosig_ops,\n+\tstatus = test_table_type(&rte_table_hash_key8_lru_ops,\n \t\t(void *)&key8lru_params, (void *)key8lru, &table_packets,\n \t\t\tNULL, 0);\n \tVERIFY(status, CHECK_TABLE_TABLE_CONFIG);\n@@ -485,7 +485,7 @@ test_table_hash8lru(void)\n \tkey8lru_params.n_entries = 1<<16;\n \tkey8lru_params.f_hash = NULL;\n \n-\tstatus = test_table_type(&rte_table_hash_key8_lru_dosig_ops,\n+\tstatus = test_table_type(&rte_table_hash_key8_lru_ops,\n \t\t(void *)&key8lru_params, (void *)key8lru, &table_packets,\n \t\t\tNULL, 0);\n \tVERIFY(status, CHECK_TABLE_TABLE_CONFIG);\n@@ -646,7 +646,7 @@ test_table_hash8ext(void)\n \ttable_packets.n_hit_packets = 50;\n \ttable_packets.n_miss_packets = 50;\n \n-\tstatus = test_table_type(&rte_table_hash_key8_ext_dosig_ops,\n+\tstatus = test_table_type(&rte_table_hash_key8_ext_ops,\n \t\t(void *)&key8ext_params, (void *)key8ext, &table_packets,\n \t\tNULL, 0);\n \tVERIFY(status, CHECK_TABLE_OK);\n@@ -654,7 +654,7 @@ test_table_hash8ext(void)\n \t/* Invalid parameters */\n \tkey8ext_params.n_entries = 0;\n \n-\tstatus = test_table_type(&rte_table_hash_key8_ext_dosig_ops,\n+\tstatus = test_table_type(&rte_table_hash_key8_ext_ops,\n \t\t(void *)&key8ext_params, (void *)key8ext, &table_packets,\n \t\tNULL, 0);\n \tVERIFY(status, CHECK_TABLE_TABLE_CONFIG);\n@@ -662,7 +662,7 @@ test_table_hash8ext(void)\n \tkey8ext_params.n_entries = 1<<16;\n \tkey8ext_params.f_hash = NULL;\n \n-\tstatus = test_table_type(&rte_table_hash_key8_ext_dosig_ops,\n+\tstatus = test_table_type(&rte_table_hash_key8_ext_ops,\n \t\t(void *)&key8ext_params, (void *)key8ext, &table_packets,\n \t\tNULL, 0);\n \tVERIFY(status, CHECK_TABLE_TABLE_CONFIG);\n@@ -670,7 +670,7 @@ test_table_hash8ext(void)\n \tkey8ext_params.f_hash = pipeline_test_hash;\n \tkey8ext_params.n_entries_ext = 0;\n \n-\tstatus = test_table_type(&rte_table_hash_key8_ext_dosig_ops,\n+\tstatus = test_table_type(&rte_table_hash_key8_ext_ops,\n \t(void *)&key8ext_params, (void *)key8ext, &table_packets, NULL, 0);\n \tVERIFY(status, CHECK_TABLE_TABLE_CONFIG);\n \ndiff --git a/test/test/test_table_tables.c b/test/test/test_table_tables.c\nindex 90d2f02..43280b0 100644\n--- a/test/test/test_table_tables.c\n+++ b/test/test/test_table_tables.c\n@@ -895,12 +895,12 @@ test_table_hash_lru(void)\n {\n \tint status;\n \n-\tstatus = test_table_hash_lru_generic(&rte_table_hash_key8_lru_dosig_ops);\n+\tstatus = test_table_hash_lru_generic(&rte_table_hash_key8_lru_ops);\n \tif (status < 0)\n \t\treturn status;\n \n \tstatus = test_table_hash_lru_generic(\n-\t\t&rte_table_hash_key8_lru_dosig_ops);\n+\t\t&rte_table_hash_key8_lru_ops);\n \tif (status < 0)\n \t\treturn status;\n \n@@ -924,12 +924,12 @@ test_table_hash_ext(void)\n {\n \tint status;\n \n-\tstatus = test_table_hash_ext_generic(&rte_table_hash_key8_ext_dosig_ops);\n+\tstatus = test_table_hash_ext_generic(&rte_table_hash_key8_ext_ops);\n \tif (status < 0)\n \t\treturn status;\n \n \tstatus = test_table_hash_ext_generic(\n-\t\t&rte_table_hash_key8_ext_dosig_ops);\n+\t\t&rte_table_hash_key8_ext_ops);\n \tif (status < 0)\n \t\treturn status;\n \n",
    "prefixes": [
        "dpdk-dev",
        "v3",
        "02/18"
    ]
}