get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 54358,
    "url": "http://patches.dpdk.org/api/patches/54358/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20190604153122.10958-2-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": "<20190604153122.10958-2-maxime.coquelin@redhat.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20190604153122.10958-2-maxime.coquelin@redhat.com",
    "date": "2019-06-04T15:31:20",
    "name": "[1/3] net/virtio: fix segmented packet issue in in-order Rx path",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "9243602fb44e9692401bc294992f6778c4515e7b",
    "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/20190604153122.10958-2-maxime.coquelin@redhat.com/mbox/",
    "series": [
        {
            "id": 4892,
            "url": "http://patches.dpdk.org/api/series/4892/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=4892",
            "date": "2019-06-04T15:31:19",
            "name": "net/virtio: Fix packet segmentation bug",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/4892/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/54358/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/54358/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 9BD4D1BC6F;\n\tTue,  4 Jun 2019 17:31:45 +0200 (CEST)",
            "from mx1.redhat.com (mx1.redhat.com [209.132.183.28])\n\tby dpdk.org (Postfix) with ESMTP id 0E5DD1BC14;\n\tTue,  4 Jun 2019 17:31:43 +0200 (CEST)",
            "from smtp.corp.redhat.com\n\t(int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14])\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 74BCD30044CE;\n\tTue,  4 Jun 2019 15:31:37 +0000 (UTC)",
            "from localhost.localdomain (ovpn-112-59.ams2.redhat.com\n\t[10.36.112.59])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id EE7A818234;\n\tTue,  4 Jun 2019 15:31:33 +0000 (UTC)"
        ],
        "From": "Maxime Coquelin <maxime.coquelin@redhat.com>",
        "To": "dev@dpdk.org, ybrustin@cisco.com, tiwei.bie@intel.com,\n\tjfreimann@redhat.com",
        "Cc": "stable@dpdk.org,\n\tMaxime Coquelin <maxime.coquelin@redhat.com>",
        "Date": "Tue,  4 Jun 2019 17:31:20 +0200",
        "Message-Id": "<20190604153122.10958-2-maxime.coquelin@redhat.com>",
        "In-Reply-To": "<20190604153122.10958-1-maxime.coquelin@redhat.com>",
        "References": "<20190604153122.10958-1-maxime.coquelin@redhat.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "X-Scanned-By": "MIMEDefang 2.79 on 10.5.11.14",
        "X-Greylist": "Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.46]); Tue, 04 Jun 2019 15:31:37 +0000 (UTC)",
        "Subject": "[dpdk-dev] [PATCH 1/3] net/virtio: fix segmented packet issue in\n\tin-order Rx path",
        "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": "After having dequeued a burst of descriptors, there may be a\nneed to dequeue a few more if the last packet was segmented\nand not complete.\n\nWhen it happens, the extra segments were not properly attached\nto the mbuf chain, and so were lost.\n\nThis patch fixes the mbuf chaining.\n\nFixes: e5f456a98d3c (\"net/virtio: support in-order Rx and Tx\")\nCc: stable@dpdk.org\n\nReported-by: Yaroslav Brustinov <ybrustin@cisco.com>\nSigned-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>\n---\n drivers/net/virtio/virtio_rxtx.c | 3 +--\n 1 file changed, 1 insertion(+), 2 deletions(-)",
    "diff": "diff --git a/drivers/net/virtio/virtio_rxtx.c b/drivers/net/virtio/virtio_rxtx.c\nindex 1de28540cd..6e76596e56 100644\n--- a/drivers/net/virtio/virtio_rxtx.c\n+++ b/drivers/net/virtio/virtio_rxtx.c\n@@ -1424,7 +1424,7 @@ virtio_recv_pkts_inorder(void *rx_queue,\n \tstruct virtqueue *vq = rxvq->vq;\n \tstruct virtio_hw *hw = vq->hw;\n \tstruct rte_mbuf *rxm;\n-\tstruct rte_mbuf *prev;\n+\tstruct rte_mbuf *prev = NULL;\n \tuint16_t nb_used, num, nb_rx;\n \tuint32_t len[VIRTIO_MBUF_BURST_SZ];\n \tstruct rte_mbuf *rcv_pkts[VIRTIO_MBUF_BURST_SZ];\n@@ -1536,7 +1536,6 @@ virtio_recv_pkts_inorder(void *rx_queue,\n \t\tuint16_t rcv_cnt = RTE_MIN((uint16_t)seg_res,\n \t\t\t\t\tVIRTIO_MBUF_BURST_SZ);\n \n-\t\tprev = rcv_pkts[nb_rx];\n \t\tif (likely(VIRTQUEUE_NUSED(vq) >= rcv_cnt)) {\n \t\t\tvirtio_rmb(hw->weak_barriers);\n \t\t\tnum = virtqueue_dequeue_rx_inorder(vq, rcv_pkts, len,\n",
    "prefixes": [
        "1/3"
    ]
}