get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 127478,
    "url": "http://patches.dpdk.org/api/patches/127478/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20230525162551.70359-11-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": "<20230525162551.70359-11-maxime.coquelin@redhat.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230525162551.70359-11-maxime.coquelin@redhat.com",
    "date": "2023-05-25T16:25:33",
    "name": "[v3,10/28] vhost: retry translating IOVA after IOTLB miss",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "7cd1ed2679ab34c4297c3cdfeecdc7bd8fb8adac",
    "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/20230525162551.70359-11-maxime.coquelin@redhat.com/mbox/",
    "series": [
        {
            "id": 28187,
            "url": "http://patches.dpdk.org/api/series/28187/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=28187",
            "date": "2023-05-25T16:25:23",
            "name": "Add VDUSE support to Vhost library",
            "version": 3,
            "mbox": "http://patches.dpdk.org/series/28187/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/127478/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/127478/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 D303942B9D;\n\tThu, 25 May 2023 18:27:04 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id A597F42F8C;\n\tThu, 25 May 2023 18:26:47 +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 0002242DC8\n for <dev@dpdk.org>; Thu, 25 May 2023 18:26:44 +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-651-sxQargKNNTm4qU0Kmaxpdg-1; Thu, 25 May 2023 12:26:41 -0400",
            "from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com\n [10.11.54.7])\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 0AA6B811E86;\n Thu, 25 May 2023 16:26:41 +0000 (UTC)",
            "from max-t490s.redhat.com (unknown [10.39.208.23])\n by smtp.corp.redhat.com (Postfix) with ESMTP id 803AA140E95D;\n Thu, 25 May 2023 16:26:38 +0000 (UTC)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1685032004;\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=tXiJeF5mzGiVVFEgPVYt9RbCHIhRdJ6LiGjeUyYofFg=;\n b=AyCt2GmtZJP+MA7HJEE+X/bOOTUBNHjMhDjyIeeMzBX/5/uqMwu+iqGziEO8/kfuM5X14L\n +884brJQDdp6aoFVZCwjAJ+9gTxDEUq35V8OWM+rMKKfqNzkhiK9ec0JSOXmQZ/d8AaQ1s\n JuJgnjjTxIbtzq8yhUWKcehzmnomEEQ=",
        "X-MC-Unique": "sxQargKNNTm4qU0Kmaxpdg-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 v3 10/28] vhost: retry translating IOVA after IOTLB miss",
        "Date": "Thu, 25 May 2023 18:25:33 +0200",
        "Message-Id": "<20230525162551.70359-11-maxime.coquelin@redhat.com>",
        "In-Reply-To": "<20230525162551.70359-1-maxime.coquelin@redhat.com>",
        "References": "<20230525162551.70359-1-maxime.coquelin@redhat.com>",
        "MIME-Version": "1.0",
        "X-Scanned-By": "MIMEDefang 3.1 on 10.11.54.7",
        "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 d35075b96c..4f16307e4d 100644\n--- a/lib/vhost/vhost.c\n+++ b/lib/vhost/vhost.c\n@@ -96,6 +96,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": [
        "v3",
        "10/28"
    ]
}