get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 117732,
    "url": "http://patches.dpdk.org/api/patches/117732/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20221009111154.213253-1-andrew.rybchenko@oktetlabs.ru/",
    "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": "<20221009111154.213253-1-andrew.rybchenko@oktetlabs.ru>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20221009111154.213253-1-andrew.rybchenko@oktetlabs.ru",
    "date": "2022-10-09T11:11:53",
    "name": "[1/2] mempool: check driver enqueue result in one place",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "be21930f949bfc344cb33ca54d8800540de31531",
    "submitter": {
        "id": 2013,
        "url": "http://patches.dpdk.org/api/people/2013/?format=api",
        "name": "Andrew Rybchenko",
        "email": "Andrew.Rybchenko@oktetlabs.ru"
    },
    "delegate": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20221009111154.213253-1-andrew.rybchenko@oktetlabs.ru/mbox/",
    "series": [
        {
            "id": 25060,
            "url": "http://patches.dpdk.org/api/series/25060/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=25060",
            "date": "2022-10-09T11:11:53",
            "name": "[1/2] mempool: check driver enqueue result in one place",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/25060/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/117732/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/117732/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id C9B32A0542;\n\tSun,  9 Oct 2022 13:12:01 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id A61C0400D5;\n\tSun,  9 Oct 2022 13:12:00 +0200 (CEST)",
            "from shelob.oktetlabs.ru (shelob.oktetlabs.ru [91.220.146.113])\n by mails.dpdk.org (Postfix) with ESMTP id 48F6E40042\n for <dev@dpdk.org>; Sun,  9 Oct 2022 13:11:59 +0200 (CEST)",
            "by shelob.oktetlabs.ru (Postfix, from userid 115)\n id 9E8067F; Sun,  9 Oct 2022 14:11:58 +0300 (MSK)",
            "from aros.oktetlabs.ru (aros.oktetlabs.ru [192.168.38.17])\n by shelob.oktetlabs.ru (Postfix) with ESMTP id F065766;\n Sun,  9 Oct 2022 14:11:57 +0300 (MSK)"
        ],
        "X-Spam-Checker-Version": "SpamAssassin 3.4.6 (2021-04-09) on mail1.oktetlabs.ru",
        "X-Spam-Level": "",
        "X-Spam-Status": "No, score=0.8 required=5.0 tests=ALL_TRUSTED, DKIM_ADSP_DISCARD\n autolearn=no autolearn_force=no version=3.4.6",
        "DKIM-Filter": "OpenDKIM Filter v2.11.0 shelob.oktetlabs.ru F065766",
        "Authentication-Results": "shelob.oktetlabs.ru/F065766; dkim=none;\n dkim-atps=neutral",
        "From": "Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>",
        "To": "Olivier Matz <olivier.matz@6wind.com>",
        "Cc": "dev@dpdk.org, =?utf-8?q?Morten_Br=C3=B8rup?= <mb@smartsharesystems.com>",
        "Subject": "[PATCH 1/2] mempool: check driver enqueue result in one place",
        "Date": "Sun,  9 Oct 2022 14:11:53 +0300",
        "Message-Id": "<20221009111154.213253-1-andrew.rybchenko@oktetlabs.ru>",
        "X-Mailer": "git-send-email 2.30.2",
        "In-Reply-To": "<20220202103354.79832-1-mb@smartsharesystems.com>",
        "References": "<20220202103354.79832-1-mb@smartsharesystems.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "Enqueue operation must not fail. Move corresponding debug check\nfrom one particular case to dequeue operation helper in order\nto do it for all invocations.\n\nLog critical message with useful information instead of rte_panic().\n\nMake rte_mempool_do_generic_put() implementation more readable and\nfix incosistency when return value is not checked in one place and\nchecked in another.\n\nSigned-off-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>\n---\n lib/mempool/rte_mempool.h | 14 ++++++++------\n 1 file changed, 8 insertions(+), 6 deletions(-)",
    "diff": "diff --git a/lib/mempool/rte_mempool.h b/lib/mempool/rte_mempool.h\nindex 4c4af2a8ed..95d64901e5 100644\n--- a/lib/mempool/rte_mempool.h\n+++ b/lib/mempool/rte_mempool.h\n@@ -786,12 +786,19 @@ rte_mempool_ops_enqueue_bulk(struct rte_mempool *mp, void * const *obj_table,\n \t\tunsigned n)\n {\n \tstruct rte_mempool_ops *ops;\n+\tint ret;\n \n \tRTE_MEMPOOL_STAT_ADD(mp, put_common_pool_bulk, 1);\n \tRTE_MEMPOOL_STAT_ADD(mp, put_common_pool_objs, n);\n \trte_mempool_trace_ops_enqueue_bulk(mp, obj_table, n);\n \tops = rte_mempool_get_ops(mp->ops_index);\n-\treturn ops->enqueue(mp, obj_table, n);\n+\tret = ops->enqueue(mp, obj_table, n);\n+#ifdef RTE_LIBRTE_MEMPOOL_DEBUG\n+\tif (unlikely(ret < 0))\n+\t\tRTE_LOG(CRIT, MEMPOOL, \"cannot enqueue %u objects to mempool %s\\n\",\n+\t\t\tn, mp->name);\n+#endif\n+\treturn ret;\n }\n \n /**\n@@ -1351,12 +1358,7 @@ rte_mempool_do_generic_put(struct rte_mempool *mp, void * const *obj_table,\n ring_enqueue:\n \n \t/* push remaining objects in ring */\n-#ifdef RTE_LIBRTE_MEMPOOL_DEBUG\n-\tif (rte_mempool_ops_enqueue_bulk(mp, obj_table, n) < 0)\n-\t\trte_panic(\"cannot put objects in mempool\\n\");\n-#else\n \trte_mempool_ops_enqueue_bulk(mp, obj_table, n);\n-#endif\n }\n \n \n",
    "prefixes": [
        "1/2"
    ]
}