get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 105325,
    "url": "http://patchwork.dpdk.org/api/patches/105325/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20211222082550.436-1-chenzhiheng0227@gmail.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.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": "<20211222082550.436-1-chenzhiheng0227@gmail.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20211222082550.436-1-chenzhiheng0227@gmail.com",
    "date": "2021-12-22T08:25:50",
    "name": "[v2] mempool: fix the description of some function return values",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "544c768a6b2e19d5c346c20baa7c17a7a3eeacb3",
    "submitter": {
        "id": 2459,
        "url": "http://patchwork.dpdk.org/api/people/2459/?format=api",
        "name": "Zhiheng Chen",
        "email": "chenzhiheng0227@gmail.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20211222082550.436-1-chenzhiheng0227@gmail.com/mbox/",
    "series": [
        {
            "id": 21007,
            "url": "http://patchwork.dpdk.org/api/series/21007/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=21007",
            "date": "2021-12-22T08:25:50",
            "name": "[v2] mempool: fix the description of some function return values",
            "version": 2,
            "mbox": "http://patchwork.dpdk.org/series/21007/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/105325/comments/",
    "check": "fail",
    "checks": "http://patchwork.dpdk.org/api/patches/105325/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 69DB9A034E;\n\tWed, 22 Dec 2021 11:01:15 +0100 (CET)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 21F9941141;\n\tWed, 22 Dec 2021 11:01:06 +0100 (CET)",
            "from mail-pj1-f50.google.com (mail-pj1-f50.google.com\n [209.85.216.50]) by mails.dpdk.org (Postfix) with ESMTP id 6DB0A40DDA\n for <dev@dpdk.org>; Wed, 22 Dec 2021 09:26:08 +0100 (CET)",
            "by mail-pj1-f50.google.com with SMTP id\n o63-20020a17090a0a4500b001b1c2db8145so5081281pjo.5\n for <dev@dpdk.org>; Wed, 22 Dec 2021 00:26:08 -0800 (PST)",
            "from localhost.localdomain ([223.223.179.210])\n by smtp.gmail.com with ESMTPSA id m2sm1430172pjh.36.2021.12.22.00.26.05\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Wed, 22 Dec 2021 00:26:07 -0800 (PST)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;\n h=from:to:cc:subject:date:message-id;\n bh=x1t887iqTL8RuXli8tDpdNoO16BBjWsDxvBa3012NoM=;\n b=QNTBjgaabH7aYw7pGVkK6IrWq8w/oITe+M5a3C2+4ltIQ025vfvD0uXikygkzTGqoF\n p+++BPkJ0ZGfBsibfI58aL6jMPmW0GMafy6bIAAdkHWiCgneijIUX9pRHTuiStIPR63k\n 5qy+PIFTTPjYNeK46hBQnmo0AXlvD7FaWgxZ8bt76YQbV6oZzLr/EOsmm1fR2K6Ousfm\n DDz16WgDfTyeeLehq0FWkRNBfxAU9zBuRQC5IsRQAkPsQgEBQjLu5UYN26J02PnK7wvM\n LuZTxQDg6GhTgF3Meu2Y3sqWpnUyU79VyufMB2fS4SdpJTE1d4mkAp4zjd5SiRzYmG8t\n E61g==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20210112;\n h=x-gm-message-state:from:to:cc:subject:date:message-id;\n bh=x1t887iqTL8RuXli8tDpdNoO16BBjWsDxvBa3012NoM=;\n b=1qUjtdUsXzg37dNjPp2W8AKEn0YrVMZm7D7ZmWrJJktNr5EJuYDtUJsRO2sX4yOadI\n f8ee1HH9Prize+/kmHlj7cLt4D8b6uwGmXQi7wCDzwbTGbNKG7jAGF5h48qSJIvchOCK\n ym1/uI9c3FDEjR0DPBxMbol6LMH1BVMuc81eA9ac1bI9LIoHT1S30E3HvDhJfAQ5VJFC\n y5/meVsCTJZRQ4d6aCRWbJq3lLYP0/OmpDlf1pu0NBZjLSYHhFaBxoB3hN4fHSgsH26c\n we85wYgGuz5g4ZPoTea77wyAKpKO9Nt1XW18xTJlurWuOGOowtCDPHU1/QSuo2DBP47O\n sdAw==",
        "X-Gm-Message-State": "AOAM530+HoNM2sHQ0p8MdEI/V1Y+jOWZ840vinIMlJdfR0+58l4EkC9W\n GuVI35Iyiq5Rtvq+hj5v1Ng=",
        "X-Google-Smtp-Source": "\n ABdhPJxVuWtXFAM8rGjGVrHJQTalsqq1ypEIZM4HR3lDoCH/Y4dkh3U58Pydg2KgPmLdhmFcHBv9DQ==",
        "X-Received": "by 2002:a17:902:9891:b0:148:a2e8:2c3a with SMTP id\n s17-20020a170902989100b00148a2e82c3amr1779480plp.137.1640161567639;\n Wed, 22 Dec 2021 00:26:07 -0800 (PST)",
        "From": "Zhiheng Chen <chenzhiheng0227@gmail.com>",
        "To": "Olivier Matz <olivier.matz@6wind.com>,\n Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>",
        "Cc": "dev@dpdk.org,\n\tZhiheng Chen <chenzhiheng0227@gmail.com>",
        "Subject": "[PATCH v2] mempool: fix the description of some function return\n values",
        "Date": "Wed, 22 Dec 2021 08:25:50 +0000",
        "Message-Id": "<20211222082550.436-1-chenzhiheng0227@gmail.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "X-Mailman-Approved-At": "Wed, 22 Dec 2021 11:01:03 +0100",
        "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": "Compared to patch version 1, this version updates the descriptions\nof underlying functions.\n\nIn rte_mempool_ring.c, the committer uses the symbol ENOBUFS to\ndescribe the return value of function common_ring_sc_dequeue,\nbut in rte_mempool.h, the symbol ENOENT is used to describe\nthe return value of function rte_mempool_get. If the user of\ndpdk uses the symbol ENOENT as the judgment condition of\nthe return value, it may cause some abnormal phenomena\nin their own programs, such as when the mempool space is exhausted.\n\nFixes: ea5dd2744b90 (\"mempool: cache optimisations\")\n\nSigned-off-by: Zhiheng Chen <chenzhiheng0227@gmail.com>\n---\n lib/mempool/rte_mempool.h | 22 +++++++++++-----------\n 1 file changed, 11 insertions(+), 11 deletions(-)",
    "diff": "diff --git a/lib/mempool/rte_mempool.h b/lib/mempool/rte_mempool.h\nindex 1e7a3c1527..3b52bd6737 100644\n--- a/lib/mempool/rte_mempool.h\n+++ b/lib/mempool/rte_mempool.h\n@@ -737,8 +737,8 @@ rte_mempool_ops_alloc(struct rte_mempool *mp);\n  * @param n\n  *   Number of objects to get.\n  * @return\n- *   - 0: Success; got n objects.\n- *   - <0: Error; code of dequeue function.\n+ *   - >=0: Success; number of objects supplied.\n+ *   - -ENOBUFS: Not enough entries in the mempool; no object is retrieved.\n  */\n static inline int\n rte_mempool_ops_dequeue_bulk(struct rte_mempool *mp,\n@@ -1453,7 +1453,7 @@ rte_mempool_put(struct rte_mempool *mp, void *obj)\n  *   A pointer to a mempool cache structure. May be NULL if not needed.\n  * @return\n  *   - >=0: Success; number of objects supplied.\n- *   - <0: Error; code of ring dequeue function.\n+ *   - -ENOBUFS: Not enough entries in the mempool; no object is retrieved.\n  */\n static __rte_always_inline int\n rte_mempool_do_generic_get(struct rte_mempool *mp, void **obj_table,\n@@ -1521,7 +1521,7 @@ rte_mempool_do_generic_get(struct rte_mempool *mp, void **obj_table,\n  * Get several objects from the mempool.\n  *\n  * If cache is enabled, objects will be retrieved first from cache,\n- * subsequently from the common pool. Note that it can return -ENOENT when\n+ * subsequently from the common pool. Note that it can return -ENOBUFS when\n  * the local cache and common pool are empty, even if cache from other\n  * lcores are full.\n  *\n@@ -1534,8 +1534,8 @@ rte_mempool_do_generic_get(struct rte_mempool *mp, void **obj_table,\n  * @param cache\n  *   A pointer to a mempool cache structure. May be NULL if not needed.\n  * @return\n- *   - 0: Success; objects taken.\n- *   - -ENOENT: Not enough entries in the mempool; no object is retrieved.\n+ *   - >=0: Success; number of objects supplied.\n+ *   - -ENOBUFS: Not enough entries in the mempool; no object is retrieved.\n  */\n static __rte_always_inline int\n rte_mempool_generic_get(struct rte_mempool *mp, void **obj_table,\n@@ -1557,7 +1557,7 @@ rte_mempool_generic_get(struct rte_mempool *mp, void **obj_table,\n  * mempool creation time (see flags).\n  *\n  * If cache is enabled, objects will be retrieved first from cache,\n- * subsequently from the common pool. Note that it can return -ENOENT when\n+ * subsequently from the common pool. Note that it can return -ENOBUFS when\n  * the local cache and common pool are empty, even if cache from other\n  * lcores are full.\n  *\n@@ -1568,8 +1568,8 @@ rte_mempool_generic_get(struct rte_mempool *mp, void **obj_table,\n  * @param n\n  *   The number of objects to get from the mempool to obj_table.\n  * @return\n- *   - 0: Success; objects taken\n- *   - -ENOENT: Not enough entries in the mempool; no object is retrieved.\n+ *   - >=0: Success; number of objects supplied.\n+ *   - -ENOBUFS: Not enough entries in the mempool; no object is retrieved.\n  */\n static __rte_always_inline int\n rte_mempool_get_bulk(struct rte_mempool *mp, void **obj_table, unsigned int n)\n@@ -1588,7 +1588,7 @@ rte_mempool_get_bulk(struct rte_mempool *mp, void **obj_table, unsigned int n)\n  * mempool creation (see flags).\n  *\n  * If cache is enabled, objects will be retrieved first from cache,\n- * subsequently from the common pool. Note that it can return -ENOENT when\n+ * subsequently from the common pool. Note that it can return -ENOBUFS when\n  * the local cache and common pool are empty, even if cache from other\n  * lcores are full.\n  *\n@@ -1598,7 +1598,7 @@ rte_mempool_get_bulk(struct rte_mempool *mp, void **obj_table, unsigned int n)\n  *   A pointer to a void * pointer (object) that will be filled.\n  * @return\n  *   - 0: Success; objects taken.\n- *   - -ENOENT: Not enough entries in the mempool; no object is retrieved.\n+ *   - -ENOBUFS: Not enough entries in the mempool; no object is retrieved.\n  */\n static __rte_always_inline int\n rte_mempool_get(struct rte_mempool *mp, void **obj_p)\n",
    "prefixes": [
        "v2"
    ]
}