get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 7767,
    "url": "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"
    ]
}