get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 46040,
    "url": "http://patches.dpdk.org/api/patches/46040/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20181004081403.8039-20-maxime.coquelin@redhat.com/",
    "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": "<20181004081403.8039-20-maxime.coquelin@redhat.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20181004081403.8039-20-maxime.coquelin@redhat.com",
    "date": "2018-10-04T08:14:03",
    "name": "[v3,19/19] net/vhost: add parameter to enable postcopy support",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "31f63db5d17a5661ab08b1bde2991e1601910810",
    "submitter": {
        "id": 512,
        "url": "http://patches.dpdk.org/api/people/512/?format=api",
        "name": "Maxime Coquelin",
        "email": "maxime.coquelin@redhat.com"
    },
    "delegate": {
        "id": 2642,
        "url": "http://patches.dpdk.org/api/users/2642/?format=api",
        "username": "mcoquelin",
        "first_name": "Maxime",
        "last_name": "Coquelin",
        "email": "maxime.coquelin@redhat.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20181004081403.8039-20-maxime.coquelin@redhat.com/mbox/",
    "series": [
        {
            "id": 1685,
            "url": "http://patches.dpdk.org/api/series/1685/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=1685",
            "date": "2018-10-04T08:13:44",
            "name": "vhost: add postcopy live-migration support",
            "version": 3,
            "mbox": "http://patches.dpdk.org/series/1685/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/46040/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/46040/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 27F751B189;\n\tThu,  4 Oct 2018 10:16:27 +0200 (CEST)",
            "from mx1.redhat.com (mx1.redhat.com [209.132.183.28])\n\tby dpdk.org (Postfix) with ESMTP id 260AA1B18A;\n\tThu,  4 Oct 2018 10:16:26 +0200 (CEST)",
            "from smtp.corp.redhat.com\n\t(int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.26])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id 71AA161BB0;\n\tThu,  4 Oct 2018 08:16:25 +0000 (UTC)",
            "from localhost.localdomain (unknown [10.36.112.13])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id 3AAF13091322;\n\tThu,  4 Oct 2018 08:16:21 +0000 (UTC)"
        ],
        "From": "Maxime Coquelin <maxime.coquelin@redhat.com>",
        "To": "dev@dpdk.org, tiwei.bie@intel.com, zhihong.wang@intel.com,\n\tjfreimann@redhat.com, nicknickolaev@gmail.com, i.maximets@samsung.com,\n\tbruce.richardson@intel.com, alejandro.lucero@netronome.com",
        "Cc": "dgilbert@redhat.com, stable@dpdk.org,\n\tMaxime Coquelin <maxime.coquelin@redhat.com>",
        "Date": "Thu,  4 Oct 2018 10:14:03 +0200",
        "Message-Id": "<20181004081403.8039-20-maxime.coquelin@redhat.com>",
        "In-Reply-To": "<20181004081403.8039-1-maxime.coquelin@redhat.com>",
        "References": "<20181004081403.8039-1-maxime.coquelin@redhat.com>",
        "X-Scanned-By": "MIMEDefang 2.84 on 10.5.11.26",
        "X-Greylist": "Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.39]); Thu, 04 Oct 2018 08:16:25 +0000 (UTC)",
        "Subject": "[dpdk-dev] [PATCH v3 19/19] net/vhost: add parameter to enable\n\tpostcopy support",
        "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": "Introduce a new postcopy-support parameter to Vhost PMD that\npasses the RTE_VHOST_USER_POSTCOPY_SUPPORT flag at vhost\ndevice register time.\n\nFlag should only be set if application does not prefault guest\nmemory using, for example, mlockall() syscall.\n\nDefault value is 0, meaning that postcopy support is disabled\nunless specified explicitly.\n\nExample to enable postcopy support for a given device:\n\n--vdev 'net_vhost0,iface=/tmp/vhost-user1,postcopy-support=1'\n\nSigned-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>\n---\n doc/guides/nics/vhost.rst         |  5 +++++\n drivers/net/vhost/rte_eth_vhost.c | 13 +++++++++++++\n 2 files changed, 18 insertions(+)",
    "diff": "diff --git a/doc/guides/nics/vhost.rst b/doc/guides/nics/vhost.rst\nindex 4f7ae8990..23f2e87aa 100644\n--- a/doc/guides/nics/vhost.rst\n+++ b/doc/guides/nics/vhost.rst\n@@ -71,6 +71,11 @@ The user can specify below arguments in `--vdev` option.\n     It is used to enable iommu support in vhost library.\n     (Default: 0 (disabled))\n \n+#.  ``postcopy-support``:\n+\n+    It is used to enable postcopy live-migration support in vhost library.\n+    (Default: 0 (disabled))\n+\n Vhost PMD event handling\n ------------------------\n \ndiff --git a/drivers/net/vhost/rte_eth_vhost.c b/drivers/net/vhost/rte_eth_vhost.c\nindex aa6052221..1330f06ba 100644\n--- a/drivers/net/vhost/rte_eth_vhost.c\n+++ b/drivers/net/vhost/rte_eth_vhost.c\n@@ -30,6 +30,7 @@ enum {VIRTIO_RXQ, VIRTIO_TXQ, VIRTIO_QNUM};\n #define ETH_VHOST_CLIENT_ARG\t\t\"client\"\n #define ETH_VHOST_DEQUEUE_ZERO_COPY\t\"dequeue-zero-copy\"\n #define ETH_VHOST_IOMMU_SUPPORT\t\t\"iommu-support\"\n+#define ETH_VHOST_POSTCOPY_SUPPORT\t\"postcopy-support\"\n #define VHOST_MAX_PKT_BURST 32\n \n static const char *valid_arguments[] = {\n@@ -38,6 +39,7 @@ static const char *valid_arguments[] = {\n \tETH_VHOST_CLIENT_ARG,\n \tETH_VHOST_DEQUEUE_ZERO_COPY,\n \tETH_VHOST_IOMMU_SUPPORT,\n+\tETH_VHOST_POSTCOPY_SUPPORT,\n \tNULL\n };\n \n@@ -1339,6 +1341,7 @@ rte_pmd_vhost_probe(struct rte_vdev_device *dev)\n \tint client_mode = 0;\n \tint dequeue_zero_copy = 0;\n \tint iommu_support = 0;\n+\tint postcopy_support = 0;\n \tstruct rte_eth_dev *eth_dev;\n \tconst char *name = rte_vdev_device_name(dev);\n \n@@ -1411,6 +1414,16 @@ rte_pmd_vhost_probe(struct rte_vdev_device *dev)\n \t\t\tflags |= RTE_VHOST_USER_IOMMU_SUPPORT;\n \t}\n \n+\tif (rte_kvargs_count(kvlist, ETH_VHOST_POSTCOPY_SUPPORT) == 1) {\n+\t\tret = rte_kvargs_process(kvlist, ETH_VHOST_POSTCOPY_SUPPORT,\n+\t\t\t\t\t &open_int, &postcopy_support);\n+\t\tif (ret < 0)\n+\t\t\tgoto out_free;\n+\n+\t\tif (postcopy_support)\n+\t\t\tflags |= RTE_VHOST_USER_POSTCOPY_SUPPORT;\n+\t}\n+\n \tif (dev->device.numa_node == SOCKET_ID_ANY)\n \t\tdev->device.numa_node = rte_socket_id();\n \n",
    "prefixes": [
        "v3",
        "19/19"
    ]
}