Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/30550/?format=api
http://patches.dpdk.org/api/patches/30550/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/1508339034-171115-35-git-send-email-cristian.dumitrescu@intel.com/", "project": { "id": 1, "url": "http://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-35-git-send-email-cristian.dumitrescu@intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/1508339034-171115-35-git-send-email-cristian.dumitrescu@intel.com", "date": "2017-10-18T15:03:51", "name": "[dpdk-dev,v3,15/18] librte_table: cosmetic enhancements in api file", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "a90a676f35188d3417d4593d48aaa8ae21e3c296", "submitter": { "id": 19, "url": "http://patches.dpdk.org/api/people/19/?format=api", "name": "Cristian Dumitrescu", "email": "cristian.dumitrescu@intel.com" }, "delegate": null, "mbox": "http://patches.dpdk.org/project/dpdk/patch/1508339034-171115-35-git-send-email-cristian.dumitrescu@intel.com/mbox/", "series": [], "comments": "http://patches.dpdk.org/api/patches/30550/comments/", "check": "success", "checks": "http://patches.dpdk.org/api/patches/30550/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 25EDF1B24E;\n\tWed, 18 Oct 2017 17:05:59 +0200 (CEST)", "from mga11.intel.com (mga11.intel.com [192.55.52.93])\n\tby dpdk.org (Postfix) with ESMTP id 3AE231B19D\n\tfor <dev@dpdk.org>; Wed, 18 Oct 2017 17:04:37 +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:04:36 -0700", "from silpixa00382658.ir.intel.com ([10.237.223.29])\n\tby orsmga004.jf.intel.com with ESMTP; 18 Oct 2017 08:04:35 -0700" ], "X-ExtLoop1": "1", "X-IronPort-AV": "E=Sophos;i=\"5.43,397,1503385200\"; d=\"scan'208\";a=\"139673237\"", "From": "Cristian Dumitrescu <cristian.dumitrescu@intel.com>", "To": "dev@dpdk.org", "Cc": "thomas@monjalon.net", "Date": "Wed, 18 Oct 2017 16:03:51 +0100", "Message-Id": "<1508339034-171115-35-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 15/18] librte_table: cosmetic enhancements in\n\tapi file", "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": "Consolidated hash tables into functional groups.\nMinor changes in comments.\n\nSigned-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>\n---\n lib/librte_table/rte_table_hash.h | 34 +++++++++-------------------------\n 1 file changed, 9 insertions(+), 25 deletions(-)", "diff": "diff --git a/lib/librte_table/rte_table_hash.h b/lib/librte_table/rte_table_hash.h\nindex 3c53d6a..081464c 100644\n--- a/lib/librte_table/rte_table_hash.h\n+++ b/lib/librte_table/rte_table_hash.h\n@@ -45,8 +45,6 @@ extern \"C\" {\n * These tables use the exact match criterion to uniquely associate data to\n * lookup keys.\n *\n- * Use-cases: Flow classification table, Address Resolution Protocol (ARP) table\n- *\n * Hash table types:\n * 1. Entry add strategy on bucket full:\n * a. Least Recently Used (LRU): One of the existing keys in the bucket is\n@@ -59,7 +57,7 @@ extern \"C\" {\n * to the bucket, it also becomes the new MRU key. When a key needs to\n * be picked and dropped, the most likely candidate for drop, i.e. the\n * current LRU key, is always picked. The LRU logic requires maintaining\n- * specific data structures per each bucket.\n+ * specific data structures per each bucket. Use-cases: flow cache, etc.\n * b. Extendible bucket (ext): The bucket is extended with space for 4 more\n * keys. This is done by allocating additional memory at table init time,\n * which is used to create a pool of free keys (the size of this pool is\n@@ -73,20 +71,8 @@ extern \"C\" {\n * first group of 4 keys, the search continues beyond the first group of\n * 4 keys, potentially until all keys in this bucket are examined. The\n * extendible bucket logic requires maintaining specific data structures\n- * per table and per each bucket.\n- * 2. Key signature computation:\n- * a. Pre-computed key signature: The key lookup operation is split between\n- * two CPU cores. The first CPU core (typically the CPU core performing\n- * packet RX) extracts the key from the input packet, computes the key\n- * signature and saves both the key and the key signature in the packet\n- * buffer as packet meta-data. The second CPU core reads both the key and\n- * the key signature from the packet meta-data and performs the bucket\n- * search step of the key lookup operation.\n- * b. Key signature computed on lookup (do-sig): The same CPU core reads\n- * the key from the packet meta-data, uses it to compute the key\n- * signature and also performs the bucket search step of the key lookup\n- * operation.\n- * 3. Key size:\n+ * per table and per each bucket. Use-cases: flow table, etc.\n+ * 2. Key size:\n * a. Configurable key size\n * b. Single key size (8-byte, 16-byte or 32-byte key size)\n *\n@@ -129,22 +115,20 @@ struct rte_table_hash_params {\n \tuint64_t seed;\n };\n \n+/** Extendible bucket hash table operations */\n extern struct rte_table_ops rte_table_hash_ext_ops;\n+extern struct rte_table_ops rte_table_hash_key8_ext_ops;\n+extern struct rte_table_ops rte_table_hash_key16_ext_ops;\n+extern struct rte_table_ops rte_table_hash_key32_ext_ops;\n \n+/** LRU hash table operations */\n extern struct rte_table_ops rte_table_hash_lru_ops;\n \n extern struct rte_table_ops rte_table_hash_key8_lru_ops;\n-\n-extern struct rte_table_ops rte_table_hash_key8_ext_ops;\n-\n extern struct rte_table_ops rte_table_hash_key16_lru_ops;\n-\n-extern struct rte_table_ops rte_table_hash_key16_ext_ops;\n-\n extern struct rte_table_ops rte_table_hash_key32_lru_ops;\n \n-extern struct rte_table_ops rte_table_hash_key32_ext_ops;\n-\n+/** Cuckoo hash table operations */\n extern struct rte_table_ops rte_table_hash_cuckoo_ops;\n \n #ifdef __cplusplus\n", "prefixes": [ "dpdk-dev", "v3", "15/18" ] }{ "id": 30550, "url": "