get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 31909,
    "url": "http://patches.dpdk.org/api/patches/31909/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20171204140900.7906-3-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": "<20171204140900.7906-3-maxime.coquelin@redhat.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20171204140900.7906-3-maxime.coquelin@redhat.com",
    "date": "2017-12-04T14:08:58",
    "name": "[dpdk-dev,2/4] vhost: propagate VHOST_USER_SET_FEATURES handling error",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "5eb1b3afbe721bf8862b102449f3811695d85866",
    "submitter": {
        "id": 512,
        "url": "http://patches.dpdk.org/api/people/512/?format=api",
        "name": "Maxime Coquelin",
        "email": "maxime.coquelin@redhat.com"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20171204140900.7906-3-maxime.coquelin@redhat.com/mbox/",
    "series": [],
    "comments": "http://patches.dpdk.org/api/patches/31909/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/31909/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 C90307CE5;\n\tMon,  4 Dec 2017 15:09:23 +0100 (CET)",
            "from mx1.redhat.com (mx1.redhat.com [209.132.183.28])\n\tby dpdk.org (Postfix) with ESMTP id AA21F7CE5\n\tfor <dev@dpdk.org>; Mon,  4 Dec 2017 15:09:22 +0100 (CET)",
            "from smtp.corp.redhat.com\n\t(int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16])\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 1E1A915565;\n\tMon,  4 Dec 2017 14:09:22 +0000 (UTC)",
            "from localhost.localdomain (ovpn-112-49.ams2.redhat.com\n\t[10.36.112.49])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id AB00865E8B;\n\tMon,  4 Dec 2017 14:09:15 +0000 (UTC)"
        ],
        "From": "Maxime Coquelin <maxime.coquelin@redhat.com>",
        "To": "dev@dpdk.org, yliu@fridaylinux.org, tiwei.bie@intel.com,\n\tjianfeng.tan@intel.com",
        "Cc": "lprosek@redhat.com, lersek@redhat.com,\n\tMaxime Coquelin <maxime.coquelin@redhat.com>",
        "Date": "Mon,  4 Dec 2017 15:08:58 +0100",
        "Message-Id": "<20171204140900.7906-3-maxime.coquelin@redhat.com>",
        "In-Reply-To": "<20171204140900.7906-1-maxime.coquelin@redhat.com>",
        "References": "<20171204140900.7906-1-maxime.coquelin@redhat.com>",
        "X-Scanned-By": "MIMEDefang 2.79 on 10.5.11.16",
        "X-Greylist": "Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.29]); Mon, 04 Dec 2017 14:09:22 +0000 (UTC)",
        "Subject": "[dpdk-dev] [PATCH 2/4] vhost: propagate VHOST_USER_SET_FEATURES\n\thandling error",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Not propagating VHOST_USER_SET_FEATURES request handling\nerror may result in unpredictable behavior, as host and\nguests features may no more be synchronized.\n\nThis patch fixes this by reporting the error to the upper\nlayer, which would result in the device being destroyed\nand the connection with the master to be closed.\n\nSigned-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>\n---\n lib/librte_vhost/vhost_user.c | 4 +++-\n 1 file changed, 3 insertions(+), 1 deletion(-)",
    "diff": "diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c\nindex f51055ab2..7d84af3e2 100644\n--- a/lib/librte_vhost/vhost_user.c\n+++ b/lib/librte_vhost/vhost_user.c\n@@ -1263,7 +1263,9 @@ vhost_user_msg_handler(int vid, int fd)\n \t\tsend_vhost_reply(fd, &msg);\n \t\tbreak;\n \tcase VHOST_USER_SET_FEATURES:\n-\t\tvhost_user_set_features(dev, msg.payload.u64);\n+\t\tret = vhost_user_set_features(dev, msg.payload.u64);\n+\t\tif (ret)\n+\t\t\treturn -1;\n \t\tbreak;\n \n \tcase VHOST_USER_GET_PROTOCOL_FEATURES:\n",
    "prefixes": [
        "dpdk-dev",
        "2/4"
    ]
}