get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 106697,
    "url": "http://patches.dpdk.org/api/patches/106697/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1643425417-215270-16-git-send-email-andy.pei@intel.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": "<1643425417-215270-16-git-send-email-andy.pei@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1643425417-215270-16-git-send-email-andy.pei@intel.com",
    "date": "2022-01-29T03:03:37",
    "name": "[v3,15/15] vhost: make sure each queue callfd is configured",
    "commit_ref": null,
    "pull_url": null,
    "state": "changes-requested",
    "archived": true,
    "hash": "a7a9e3f825aaa1fe2c42e4422f8a2bc95ef7f2a7",
    "submitter": {
        "id": 1185,
        "url": "http://patches.dpdk.org/api/people/1185/?format=api",
        "name": "Pei, Andy",
        "email": "andy.pei@intel.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/1643425417-215270-16-git-send-email-andy.pei@intel.com/mbox/",
    "series": [
        {
            "id": 21420,
            "url": "http://patches.dpdk.org/api/series/21420/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=21420",
            "date": "2022-01-29T03:03:22",
            "name": "add virtio_blk device support to vdpa/ifc",
            "version": 3,
            "mbox": "http://patches.dpdk.org/series/21420/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/106697/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/106697/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 07255A00C4;\n\tSat, 29 Jan 2022 04:10:57 +0100 (CET)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id C4094428B6;\n\tSat, 29 Jan 2022 04:10:14 +0100 (CET)",
            "from mga04.intel.com (mga04.intel.com [192.55.52.120])\n by mails.dpdk.org (Postfix) with ESMTP id 15368428A6\n for <dev@dpdk.org>; Sat, 29 Jan 2022 04:10:12 +0100 (CET)",
            "from fmsmga008.fm.intel.com ([10.253.24.58])\n by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 28 Jan 2022 19:10:12 -0800",
            "from dpdk-dipei.sh.intel.com ([10.67.111.91])\n by fmsmga008.fm.intel.com with ESMTP; 28 Jan 2022 19:10:11 -0800"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1643425813; x=1674961813;\n h=from:to:cc:subject:date:message-id:in-reply-to: references;\n bh=CYVxCE6tK347SJO9ema6bsNPo2bc/mSy5Uqe9fuByJc=;\n b=Hp6qmIfhL2I66LGUv9Bo0HOKo3y4N2efujT74NDDpJEXzMSVj9Rd1++u\n bZcFP7UNbYPPImVJR4Dw+YXRNMBwB0RqmC73p3Z4geS0E+AUaeTCE9XGi\n 8HDua3e1iHytg5Deq+0kOLeLM9WhgmcNh2W7AnXi5pdfZX656E8L2vJGD\n PpY8epndRZ36VogOC2/dZ3rynQmBxDxJHHRPNihQtZ0O6Ngm6uur5FvLy\n j75Y/GgKfSAEcmC3wxdquhAOeS+KvKXfbpskVQX+a9HywAx3lqk7BiYQ7\n rNe20cZTweK1cA0uAsOQbSWWRKBk+yrxLxIb9lOdUaCe10n/36uYSUrFQ A==;",
        "X-IronPort-AV": [
            "E=McAfee;i=\"6200,9189,10241\"; a=\"246076653\"",
            "E=Sophos;i=\"5.88,325,1635231600\"; d=\"scan'208\";a=\"246076653\"",
            "E=Sophos;i=\"5.88,325,1635231600\"; d=\"scan'208\";a=\"582047994\""
        ],
        "X-ExtLoop1": "1",
        "From": "Andy Pei <andy.pei@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "chenbo.xia@intel.com, maxime.coquelin@redhat.com, gang.cao@intel.com,\n changpeng.liu@intel.com",
        "Subject": "[PATCH v3 15/15] vhost: make sure each queue callfd is configured",
        "Date": "Sat, 29 Jan 2022 11:03:37 +0800",
        "Message-Id": "<1643425417-215270-16-git-send-email-andy.pei@intel.com>",
        "X-Mailer": "git-send-email 1.8.3.1",
        "In-Reply-To": "<1643425417-215270-1-git-send-email-andy.pei@intel.com>",
        "References": "<1643093258-47258-2-git-send-email-andy.pei@intel.com>\n <1643425417-215270-1-git-send-email-andy.pei@intel.com>",
        "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": "During the vhost data path building process, qemu will create\na call fd at first, and create another call fd in the end.\nThe final call fd will be used to relay notify.\nIn the original code, after kick fd is set, dev_conf will\nset the first call fd. Even though the actual call fd will set,\nthe data path will not work correctly.\n\nSigned-off-by: Andy Pei <andy.pei@intel.com>\n---\n lib/vhost/vhost_user.c | 14 ++++++++++++++\n 1 file changed, 14 insertions(+)",
    "diff": "diff --git a/lib/vhost/vhost_user.c b/lib/vhost/vhost_user.c\nindex 5eb1dd6..b25b25f 100644\n--- a/lib/vhost/vhost_user.c\n+++ b/lib/vhost/vhost_user.c\n@@ -3137,12 +3137,26 @@ typedef int (*vhost_message_handler_t)(struct virtio_net **pdev,\n \tif (!vdpa_dev)\n \t\tgoto out;\n \n+\tif (request != VHOST_USER_SET_VRING_CALL)\n+\t\tgoto out;\n+\n \tif (!(dev->flags & VIRTIO_DEV_VDPA_CONFIGURED)) {\n \t\tif (vdpa_dev->ops->dev_conf(dev->vid))\n \t\t\tVHOST_LOG_CONFIG(ERR,\n \t\t\t\t\t \"Failed to configure vDPA device\\n\");\n \t\telse\n \t\t\tdev->flags |= VIRTIO_DEV_VDPA_CONFIGURED;\n+\t} else {\n+\t\t/* when VIRTIO_DEV_VDPA_CONFIGURED already configured\n+\t\t * close the device and config the device again,\n+\t\t * make sure the call fd of each queue is configured correctly.\n+\t\t */\n+\t\tif (vdpa_dev->ops->dev_close(dev->vid))\n+\t\t\tVHOST_LOG_CONFIG(ERR,\n+\t\t\t\t\t \"Failed to close vDPA device\\n\");\n+\t\tif (vdpa_dev->ops->dev_conf(dev->vid))\n+\t\t\tVHOST_LOG_CONFIG(ERR,\n+\t\t\t\t\t \"Failed to re-config vDPA device\\n\");\n \t}\n \n out:\n",
    "prefixes": [
        "v3",
        "15/15"
    ]
}