get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 48080,
    "url": "http://patchwork.dpdk.org/api/patches/48080/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/6a0a1a54d58a7c72380860c1da9e36d512c0ccd2.1542207435.git.anatoly.burakov@intel.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": "<6a0a1a54d58a7c72380860c1da9e36d512c0ccd2.1542207435.git.anatoly.burakov@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/6a0a1a54d58a7c72380860c1da9e36d512c0ccd2.1542207435.git.anatoly.burakov@intel.com",
    "date": "2018-11-14T15:00:58",
    "name": "[v2] malloc: fix adjacency check to also include segment list",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "3f38e4baeb2e3ae328ae856806cb62a313386c05",
    "submitter": {
        "id": 4,
        "url": "http://patchwork.dpdk.org/api/people/4/?format=api",
        "name": "Anatoly Burakov",
        "email": "anatoly.burakov@intel.com"
    },
    "delegate": {
        "id": 1,
        "url": "http://patchwork.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/6a0a1a54d58a7c72380860c1da9e36d512c0ccd2.1542207435.git.anatoly.burakov@intel.com/mbox/",
    "series": [
        {
            "id": 2421,
            "url": "http://patchwork.dpdk.org/api/series/2421/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=2421",
            "date": "2018-11-14T15:00:58",
            "name": "[v2] malloc: fix adjacency check to also include segment list",
            "version": 2,
            "mbox": "http://patchwork.dpdk.org/series/2421/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/48080/comments/",
    "check": "success",
    "checks": "http://patchwork.dpdk.org/api/patches/48080/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 788C51B147;\n\tWed, 14 Nov 2018 16:01:19 +0100 (CET)",
            "from mga12.intel.com (mga12.intel.com [192.55.52.136])\n\tby dpdk.org (Postfix) with ESMTP id CAC231B130;\n\tWed, 14 Nov 2018 16:01:17 +0100 (CET)",
            "from orsmga002.jf.intel.com ([10.7.209.21])\n\tby fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t14 Nov 2018 07:01:16 -0800",
            "from irvmail001.ir.intel.com ([163.33.26.43])\n\tby orsmga002.jf.intel.com with ESMTP; 14 Nov 2018 07:00:59 -0800",
            "from sivswdev01.ir.intel.com (sivswdev01.ir.intel.com\n\t[10.237.217.45])\n\tby irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id\n\twAEF0xML002605; Wed, 14 Nov 2018 15:00:59 GMT",
            "from sivswdev01.ir.intel.com (localhost [127.0.0.1])\n\tby sivswdev01.ir.intel.com with ESMTP id wAEF0x3u013978;\n\tWed, 14 Nov 2018 15:00:59 GMT",
            "(from aburakov@localhost)\n\tby sivswdev01.ir.intel.com with LOCAL id wAEF0was013974;\n\tWed, 14 Nov 2018 15:00:58 GMT"
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.56,232,1539673200\"; d=\"scan'208\";a=\"108519817\"",
        "From": "Anatoly Burakov <anatoly.burakov@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "yuwei1.zhang@intel.com, stable@dpdk.org",
        "Date": "Wed, 14 Nov 2018 15:00:58 +0000",
        "Message-Id": "<6a0a1a54d58a7c72380860c1da9e36d512c0ccd2.1542207435.git.anatoly.burakov@intel.com>",
        "X-Mailer": "git-send-email 1.7.0.7",
        "In-Reply-To": "<8533ab3a49f63e9700764ead8b9147a098911b41.1542204687.git.anatoly.burakov@intel.com>",
        "References": "<8533ab3a49f63e9700764ead8b9147a098911b41.1542204687.git.anatoly.burakov@intel.com>",
        "Subject": "[dpdk-dev] [PATCH v2] malloc: fix adjacency check to also include\n\tsegment list",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<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\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "It may so happen that two memory locations may be adjacent in\nvirtual memory, but belong to different segment lists. With\ncurrent code, such segments will be concatenated. Fix the\nadjacency checking code to also check if the adjacent malloc\nelements belong to the same memseg list.\n\nFixes: 66cc45e293ed (\"mem: replace memseg with memseg lists\")\n\nCc: stable@dpdk.org\n\nSigned-off-by: Anatoly Burakov <anatoly.burakov@intel.com>\n---\n\nNotes:\n    v2: fixed typo in second comparison\n\n lib/librte_eal/common/malloc_elem.c | 6 ++++--\n 1 file changed, 4 insertions(+), 2 deletions(-)",
    "diff": "diff --git a/lib/librte_eal/common/malloc_elem.c b/lib/librte_eal/common/malloc_elem.c\nindex 1a74660de..9d3dcb6a9 100644\n--- a/lib/librte_eal/common/malloc_elem.c\n+++ b/lib/librte_eal/common/malloc_elem.c\n@@ -316,13 +316,15 @@ remove_elem(struct malloc_elem *elem)\n static int\n next_elem_is_adjacent(struct malloc_elem *elem)\n {\n-\treturn elem->next == RTE_PTR_ADD(elem, elem->size);\n+\treturn elem->next == RTE_PTR_ADD(elem, elem->size) &&\n+\t\t\telem->next->msl == elem->msl;\n }\n \n static int\n prev_elem_is_adjacent(struct malloc_elem *elem)\n {\n-\treturn elem == RTE_PTR_ADD(elem->prev, elem->prev->size);\n+\treturn elem == RTE_PTR_ADD(elem->prev, elem->prev->size) &&\n+\t\t\telem->prev->msl == elem->msl;\n }\n \n /*\n",
    "prefixes": [
        "v2"
    ]
}