get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 48078,
    "url": "http://patchwork.dpdk.org/api/patches/48078/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/8533ab3a49f63e9700764ead8b9147a098911b41.1542204687.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": "<8533ab3a49f63e9700764ead8b9147a098911b41.1542204687.git.anatoly.burakov@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/8533ab3a49f63e9700764ead8b9147a098911b41.1542204687.git.anatoly.burakov@intel.com",
    "date": "2018-11-14T14:51:11",
    "name": "memalloc: check for contiguousness in external segments",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "6fa1c1af779c6c0bc44c3df7109a78b2f5abd798",
    "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/8533ab3a49f63e9700764ead8b9147a098911b41.1542204687.git.anatoly.burakov@intel.com/mbox/",
    "series": [
        {
            "id": 2419,
            "url": "http://patchwork.dpdk.org/api/series/2419/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=2419",
            "date": "2018-11-14T14:51:11",
            "name": "memalloc: check for contiguousness in external segments",
            "version": 1,
            "mbox": "http://patchwork.dpdk.org/series/2419/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/48078/comments/",
    "check": "success",
    "checks": "http://patchwork.dpdk.org/api/patches/48078/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 10F901B113;\n\tWed, 14 Nov 2018 15:51:16 +0100 (CET)",
            "from mga03.intel.com (mga03.intel.com [134.134.136.65])\n\tby dpdk.org (Postfix) with ESMTP id 3BD511B104\n\tfor <dev@dpdk.org>; Wed, 14 Nov 2018 15:51:14 +0100 (CET)",
            "from fmsmga002.fm.intel.com ([10.253.24.26])\n\tby orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t14 Nov 2018 06:51:13 -0800",
            "from irvmail001.ir.intel.com ([163.33.26.43])\n\tby fmsmga002.fm.intel.com with ESMTP; 14 Nov 2018 06:51:12 -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\twAEEpBNu000599; Wed, 14 Nov 2018 14:51:11 GMT",
            "from sivswdev01.ir.intel.com (localhost [127.0.0.1])\n\tby sivswdev01.ir.intel.com with ESMTP id wAEEpBm3007862;\n\tWed, 14 Nov 2018 14:51:11 GMT",
            "(from aburakov@localhost)\n\tby sivswdev01.ir.intel.com with LOCAL id wAEEpBXf007857;\n\tWed, 14 Nov 2018 14:51:11 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=\"104325081\"",
        "From": "Anatoly Burakov <anatoly.burakov@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "yuwei1.zhang@intel.com",
        "Date": "Wed, 14 Nov 2018 14:51:11 +0000",
        "Message-Id": "<8533ab3a49f63e9700764ead8b9147a098911b41.1542204687.git.anatoly.burakov@intel.com>",
        "X-Mailer": "git-send-email 1.7.0.7",
        "Subject": "[dpdk-dev] [PATCH] memalloc: check for contiguousness in external\n\tsegments",
        "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": "For IOVA as VA mode, we assume that memory is contiguous. However,\nfor external segments that assumption may not necessarily hold.\nFix the code to not assume that external memory segments are\ncontiguous even in IOVA as VA mode.\n\nFixes: 5282bb1c3695 (\"mem: allow memseg lists to be marked as external\")\n\nSigned-off-by: Anatoly Burakov <anatoly.burakov@intel.com>\n---\n lib/librte_eal/common/eal_common_memalloc.c | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)",
    "diff": "diff --git a/lib/librte_eal/common/eal_common_memalloc.c b/lib/librte_eal/common/eal_common_memalloc.c\nindex 1d41ea112..371271979 100644\n--- a/lib/librte_eal/common/eal_common_memalloc.c\n+++ b/lib/librte_eal/common/eal_common_memalloc.c\n@@ -77,7 +77,7 @@ eal_memalloc_is_contig(const struct rte_memseg_list *msl, void *start,\n \tconst struct rte_memseg *ms;\n \n \t/* for IOVA_VA, it's always contiguous */\n-\tif (rte_eal_iova_mode() == RTE_IOVA_VA)\n+\tif (rte_eal_iova_mode() == RTE_IOVA_VA && !msl->external)\n \t\treturn true;\n \n \t/* for legacy memory, it's always contiguous */\n",
    "prefixes": []
}