get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 128173,
    "url": "http://patchwork.dpdk.org/api/patches/128173/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20230606081852.71003-9-maxime.coquelin@redhat.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": "<20230606081852.71003-9-maxime.coquelin@redhat.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230606081852.71003-9-maxime.coquelin@redhat.com",
    "date": "2023-06-06T08:18:34",
    "name": "[v5,08/26] vhost: retry translating IOVA after IOTLB miss",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "7cd1ed2679ab34c4297c3cdfeecdc7bd8fb8adac",
    "submitter": {
        "id": 512,
        "url": "http://patchwork.dpdk.org/api/people/512/?format=api",
        "name": "Maxime Coquelin",
        "email": "maxime.coquelin@redhat.com"
    },
    "delegate": {
        "id": 2642,
        "url": "http://patchwork.dpdk.org/api/users/2642/?format=api",
        "username": "mcoquelin",
        "first_name": "Maxime",
        "last_name": "Coquelin",
        "email": "maxime.coquelin@redhat.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20230606081852.71003-9-maxime.coquelin@redhat.com/mbox/",
    "series": [
        {
            "id": 28365,
            "url": "http://patchwork.dpdk.org/api/series/28365/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=28365",
            "date": "2023-06-06T08:18:26",
            "name": "Add VDUSE support to Vhost library",
            "version": 5,
            "mbox": "http://patchwork.dpdk.org/series/28365/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/128173/comments/",
    "check": "success",
    "checks": "http://patchwork.dpdk.org/api/patches/128173/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 4590B42C3E;\n\tTue,  6 Jun 2023 10:19:57 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 2CB0042D59;\n\tTue,  6 Jun 2023 10:19:25 +0200 (CEST)",
            "from us-smtp-delivery-124.mimecast.com\n (us-smtp-delivery-124.mimecast.com [170.10.129.124])\n by mails.dpdk.org (Postfix) with ESMTP id 6BA1342D56\n for <dev@dpdk.org>; Tue,  6 Jun 2023 10:19:24 +0200 (CEST)",
            "from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com\n [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS\n (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n us-mta-639-NWszhd2ePECIrNEaetaAKQ-1; Tue, 06 Jun 2023 04:19:21 -0400",
            "from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com\n [10.11.54.1])\n (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n (No client certificate requested)\n by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 9DFD6101A53B;\n Tue,  6 Jun 2023 08:19:20 +0000 (UTC)",
            "from max-t490s.redhat.com (unknown [10.39.208.25])\n by smtp.corp.redhat.com (Postfix) with ESMTP id 243F240CF8F6;\n Tue,  6 Jun 2023 08:19:17 +0000 (UTC)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1686039564;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n content-transfer-encoding:content-transfer-encoding:\n in-reply-to:in-reply-to:references:references;\n bh=YVqmLHMAAAMHCW9ouzdoXrU9qsZSPl5hdtEviSt13uc=;\n b=L3LwiC0EUH5SdvITV0TWnz2dP7ETB82uz4PwyvdbRVkJijEUrk5SqAsk3ZydOPwZXOBIxN\n 15NEh/2sY8THd5d357B4dkFiWULU3yBUIgZ2UROjuwyP/UeTfVFX1kfK0xcH7UdSXZCR2P\n J25lSea4/4dCzpCsnT7VKjP3VP3bl3c=",
        "X-MC-Unique": "NWszhd2ePECIrNEaetaAKQ-1",
        "From": "Maxime Coquelin <maxime.coquelin@redhat.com>",
        "To": "dev@dpdk.org, chenbo.xia@intel.com, david.marchand@redhat.com,\n mkp@redhat.com, fbl@redhat.com, jasowang@redhat.com,\n cunming.liang@intel.com, xieyongji@bytedance.com, echaudro@redhat.com,\n eperezma@redhat.com, amorenoz@redhat.com, lulu@redhat.com",
        "Cc": "Maxime Coquelin <maxime.coquelin@redhat.com>",
        "Subject": "[PATCH v5 08/26] vhost: retry translating IOVA after IOTLB miss",
        "Date": "Tue,  6 Jun 2023 10:18:34 +0200",
        "Message-Id": "<20230606081852.71003-9-maxime.coquelin@redhat.com>",
        "In-Reply-To": "<20230606081852.71003-1-maxime.coquelin@redhat.com>",
        "References": "<20230606081852.71003-1-maxime.coquelin@redhat.com>",
        "MIME-Version": "1.0",
        "X-Scanned-By": "MIMEDefang 3.1 on 10.11.54.1",
        "X-Mimecast-Spam-Score": "0",
        "X-Mimecast-Originator": "redhat.com",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain; charset=\"US-ASCII\"; x-default=true",
        "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": "Vhost-user backend IOTLB misses and updates are\nasynchronous, so IOVA address translation function\njust fails after having sent an IOTLB miss update if needed\nentry was not in the IOTLB cache.\n\nThis is not the case for VDUSE, for which the needed IOTLB\nupdate is returned directly when sending an IOTLB miss.\n\nThis patch retry again finding the needed entry in the\nIOTLB cache after having sent an IOTLB miss.\n\nSigned-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>\nReviewed-by: Chenbo Xia <chenbo.xia@intel.com>\n---\n lib/vhost/vhost.c | 6 ++++++\n 1 file changed, 6 insertions(+)",
    "diff": "diff --git a/lib/vhost/vhost.c b/lib/vhost/vhost.c\nindex 3ddd2a963f..7e1af487c1 100644\n--- a/lib/vhost/vhost.c\n+++ b/lib/vhost/vhost.c\n@@ -100,6 +100,12 @@ __vhost_iova_to_vva(struct virtio_net *dev, struct vhost_virtqueue *vq,\n \t\tvhost_user_iotlb_rd_lock(vq);\n \t}\n \n+\ttmp_size = *size;\n+\t/* Retry in case of VDUSE, as it is synchronous */\n+\tvva = vhost_user_iotlb_cache_find(dev, iova, &tmp_size, perm);\n+\tif (tmp_size == *size)\n+\t\treturn vva;\n+\n \treturn 0;\n }\n \n",
    "prefixes": [
        "v5",
        "08/26"
    ]
}