Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/7767/?format=api
https://patches.dpdk.org/api/patches/7767/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/patch/1445343570-12014-1-git-send-email-reshma.pattan@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": "<1445343570-12014-1-git-send-email-reshma.pattan@intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/1445343570-12014-1-git-send-email-reshma.pattan@intel.com", "date": "2015-10-20T12:19:30", "name": "[dpdk-dev] librte_reorder: fix failing unit test cases", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "4474043f7d6d86b47aee7ce96d18c679210738fd", "submitter": { "id": 70, "url": "https://patches.dpdk.org/api/people/70/?format=api", "name": "Pattan, Reshma", "email": "reshma.pattan@intel.com" }, "delegate": null, "mbox": "https://patches.dpdk.org/project/dpdk/patch/1445343570-12014-1-git-send-email-reshma.pattan@intel.com/mbox/", "series": [], "comments": "https://patches.dpdk.org/api/patches/7767/comments/", "check": "pending", "checks": "https://patches.dpdk.org/api/patches/7767/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 [IPv6:::1])\n\tby dpdk.org (Postfix) with ESMTP id 05D368E82;\n\tTue, 20 Oct 2015 14:19:39 +0200 (CEST)", "from mga14.intel.com (mga14.intel.com [192.55.52.115])\n\tby dpdk.org (Postfix) with ESMTP id 3F46D8E7A\n\tfor <dev@dpdk.org>; Tue, 20 Oct 2015 14:19:36 +0200 (CEST)", "from fmsmga001.fm.intel.com ([10.253.24.23])\n\tby fmsmga103.fm.intel.com with ESMTP; 20 Oct 2015 05:19:35 -0700", "from irvmail001.ir.intel.com ([163.33.26.43])\n\tby fmsmga001.fm.intel.com with ESMTP; 20 Oct 2015 05:19:34 -0700", "from sivswdev02.ir.intel.com (sivswdev02.ir.intel.com\n\t[10.237.217.46])\n\tby irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id\n\tt9KCJXQI021083; Tue, 20 Oct 2015 13:19:33 +0100", "from sivswdev02.ir.intel.com (localhost [127.0.0.1])\n\tby sivswdev02.ir.intel.com with ESMTP id t9KCJXk7012055;\n\tTue, 20 Oct 2015 13:19:33 +0100", "(from reshmapa@localhost)\n\tby sivswdev02.ir.intel.com with id t9KCJX6m012050;\n\tTue, 20 Oct 2015 13:19:33 +0100" ], "X-ExtLoop1": "1", "X-IronPort-AV": "E=Sophos;i=\"5.17,707,1437462000\"; d=\"scan'208\";a=\"815186357\"", "From": "Reshma Pattan <reshma.pattan@intel.com>", "To": "dev@dpdk.org", "Date": "Tue, 20 Oct 2015 13:19:30 +0100", "Message-Id": "<1445343570-12014-1-git-send-email-reshma.pattan@intel.com>", "X-Mailer": "git-send-email 1.7.4.1", "Subject": "[dpdk-dev] [PATCH] librte_reorder: fix failing unit test cases", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.15", "Precedence": "list", "List-Id": "patches and discussions about DPDK <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": "Earlier librte_reorder changes for support of \"random sequence\nnumber as starting point\" caused unit tests failure.\nThis pacth fixes unit tests failures.\n\nIncreased reorder buffer size in examples/packet_ordering/mainc.c\nto avoaid random traffic drops that are seen when single \ncore and 4 ports are used for reorder sample app testing.\n\nSigned-off-by: Reshma Pattan <reshma.pattan@intel.com>\n---\n app/test/test_reorder.c | 75 +++++++++++++++++++++--------------------\n examples/packet_ordering/main.c | 2 +-\n 2 files changed, 39 insertions(+), 38 deletions(-)", "diff": "diff --git a/app/test/test_reorder.c b/app/test/test_reorder.c\nindex 5752d7e..67f3151 100644\n--- a/app/test/test_reorder.c\n+++ b/app/test/test_reorder.c\n@@ -77,7 +77,6 @@ test_reorder_create(void)\n \t\t\t\"No error on create() with invalid buffer size param.\");\n \n \tb = rte_reorder_create(\"PKT_RO1\", rte_socket_id(), REORDER_BUFFER_SIZE);\n-\tprintf(\"DEBUG: b= %p, orig_b= %p\\n\", b, test_params->b);\n \tTEST_ASSERT_EQUAL(b, test_params->b,\n \t\t\t\"New reorder instance created with already existing name\");\n \n@@ -165,7 +164,7 @@ test_reorder_insert(void)\n \tstruct rte_reorder_buffer *b = NULL;\n \tstruct rte_mempool *p = test_params->p;\n \tconst unsigned int size = 4;\n-\tconst unsigned int num_bufs = 6;\n+\tconst unsigned int num_bufs = 7;\n \tstruct rte_mbuf *bufs[num_bufs];\n \tint ret = 0;\n \tunsigned i;\n@@ -181,16 +180,6 @@ test_reorder_insert(void)\n \tret = rte_mempool_get_bulk(p, (void *)bufs, num_bufs);\n \tTEST_ASSERT_SUCCESS(ret, \"Error getting mbuf from pool\");\n \n-\t/* late packet */\n-\tbufs[0]->seqn = 3 * size;\n-\tret = rte_reorder_insert(b, bufs[0]);\n-\tif (!((ret == -1) && (rte_errno == ERANGE))) {\n-\t\tprintf(\"%s:%d: No error inserting late packet with seqn:\"\n-\t\t\t\t\" 3 * size\\n\", __func__, __LINE__);\n-\t\tret = -1;\n-\t\tgoto exit;\n-\t}\n-\n \tfor (i = 0; i < num_bufs; i++)\n \t\tbufs[i]->seqn = i;\n \n@@ -232,6 +221,16 @@ test_reorder_insert(void)\n \t\tgoto exit;\n \t}\n \n+\t/* late packet */\n+\tbufs[6]->seqn = 3 * size;\n+\tret = rte_reorder_insert(b, bufs[6]);\n+\tif (!((ret == -1) && (rte_errno == ERANGE))) {\n+\t\tprintf(\"%s:%d: No error inserting late packet with seqn:\"\n+\t\t\t\t\" 3 * size\\n\", __func__, __LINE__);\n+\t\tret = -1;\n+\t\tgoto exit;\n+\t}\n+\n \tret = 0;\n exit:\n \trte_mempool_put_bulk(p, (void *)bufs, num_bufs);\n@@ -245,8 +244,9 @@ test_reorder_drain(void)\n \tstruct rte_reorder_buffer *b = NULL;\n \tstruct rte_mempool *p = test_params->p;\n \tconst unsigned int size = 4;\n-\tconst unsigned int num_bufs = 10;\n+\tconst unsigned int num_bufs = 8;\n \tstruct rte_mbuf *bufs[num_bufs];\n+\tstruct rte_mbuf *robufs[num_bufs];\n \tint ret = 0;\n \tunsigned i, cnt;\n \n@@ -255,14 +255,14 @@ test_reorder_drain(void)\n \t * ready_buf: RB[size] = {NULL, NULL, NULL, NULL}\n \t * order_buf: OB[size] = {NULL, NULL, NULL, NULL}\n \t */\n-\tb = rte_reorder_create(\"test_insert\", rte_socket_id(), size);\n+\tb = rte_reorder_create(\"test_drain\", rte_socket_id(), size);\n \tTEST_ASSERT_NOT_NULL(b, \"Failed to create reorder buffer\");\n \n \tret = rte_mempool_get_bulk(p, (void *)bufs, num_bufs);\n \tTEST_ASSERT_SUCCESS(ret, \"Error getting mbuf from pool\");\n \n \t/* Check no drained packets if reorder is empty */\n-\tcnt = rte_reorder_drain(b, bufs, 1);\n+\tcnt = rte_reorder_drain(b, robufs, 1);\n \tif (cnt != 0) {\n \t\tprintf(\"%s:%d: drained packets from empty reorder buffer\\n\",\n \t\t\t\t__func__, __LINE__);\n@@ -276,29 +276,40 @@ test_reorder_drain(void)\n \t/* Insert packet with seqn 1:\n \t * reorder_seq = 0\n \t * RB[] = {NULL, NULL, NULL, NULL}\n-\t * OB[] = {NULL, 1, NULL, NULL}\n+\t * OB[] = {1, NULL, NULL, NULL}\n \t */\n \trte_reorder_insert(b, bufs[1]);\n \n-\t/* Check no drained packets if no ready/order packets */\n-\tcnt = rte_reorder_drain(b, bufs, 1);\n-\tif (cnt != 0) {\n-\t\tprintf(\"%s:%d: drained packets from empty reorder buffer\\n\",\n-\t\t\t\t__func__, __LINE__);\n+\tcnt = rte_reorder_drain(b, robufs, 1);\n+\tif (cnt != 1) {\n+\t\tprintf(\"%s:%d:%d: number of expected packets not drained\\n\",\n+\t\t\t\t__func__, __LINE__, cnt);\n \t\tret = -1;\n \t\tgoto exit;\n \t}\n \n \t/* Insert more packets\n \t * RB[] = {NULL, NULL, NULL, NULL}\n-\t * OB[] = {0, 1, NULL, 3}\n+\t * OB[] = {NULL, 2, 3, NULL}\n \t */\n-\trte_reorder_insert(b, bufs[0]);\n+\trte_reorder_insert(b, bufs[2]);\n \trte_reorder_insert(b, bufs[3]);\n \n+\t/* Insert more packets\n+\t * RB[] = {NULL, NULL, NULL, NULL}\n+\t * OB[] = {NULL, 2, 3, 4}\n+\t */\n+\trte_reorder_insert(b, bufs[4]);\n+\n+\t/* Insert more packets\n+\t * RB[] = {2, 3, 4, NULL}\n+\t * OB[] = {NULL, NULL, 7, NULL}\n+\t */\n+\trte_reorder_insert(b, bufs[7]);\n+\n \t/* drained expected packets */\n-\tcnt = rte_reorder_drain(b, bufs, 4);\n-\tif (cnt != 2) {\n+\tcnt = rte_reorder_drain(b, robufs, 4);\n+\tif (cnt != 3) {\n \t\tprintf(\"%s:%d:%d: number of expected packets not drained\\n\",\n \t\t\t\t__func__, __LINE__, cnt);\n \t\tret = -1;\n@@ -307,25 +318,15 @@ test_reorder_drain(void)\n \n \t/*\n \t * RB[] = {NULL, NULL, NULL, NULL}\n-\t * OB[] = {NULL, 3, NULL, NULL}\n-\t */\n-\n-\trte_reorder_insert(b, bufs[4]);\n-\trte_reorder_insert(b, bufs[7]);\n-\n-\t/*\n-\t * RB[] = {3, 4, NULL, NULL}\n \t * OB[] = {NULL, NULL, 7, NULL}\n \t */\n-\n-\tcnt = rte_reorder_drain(b, bufs, 4);\n-\tif (cnt != 2) {\n+\tcnt = rte_reorder_drain(b, robufs, 1);\n+\tif (cnt != 0) {\n \t\tprintf(\"%s:%d:%d: number of expected packets not drained\\n\",\n \t\t\t\t__func__, __LINE__, cnt);\n \t\tret = -1;\n \t\tgoto exit;\n \t}\n-\n \tret = 0;\n exit:\n \trte_mempool_put_bulk(p, (void *)bufs, num_bufs);\ndiff --git a/examples/packet_ordering/main.c b/examples/packet_ordering/main.c\nindex 1d9a86f..c7f40a0 100644\n--- a/examples/packet_ordering/main.c\n+++ b/examples/packet_ordering/main.c\n@@ -48,7 +48,7 @@\n #define TX_DESC_PER_QUEUE 512\n \n #define MAX_PKTS_BURST 32\n-#define REORDER_BUFFER_SIZE 8192\n+#define REORDER_BUFFER_SIZE 16384\n #define MBUF_PER_POOL 65535\n #define MBUF_POOL_CACHE_SIZE 250\n \n", "prefixes": [ "dpdk-dev" ] }{ "id": 7767, "url": "