get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 32848,
    "url": "http://patches.dpdk.org/api/patches/32848/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/6DAF063A35010343823807B082E5681F41D84163@mbx05.360buyAD.local/",
    "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": "<6DAF063A35010343823807B082E5681F41D84163@mbx05.360buyAD.local>",
    "list_archive_url": "https://inbox.dpdk.org/dev/6DAF063A35010343823807B082E5681F41D84163@mbx05.360buyAD.local",
    "date": "2018-01-03T08:21:26",
    "name": "[dpdk-dev] net/virtio: fix vector Rx break caused by rxq flushing",
    "commit_ref": null,
    "pull_url": null,
    "state": "not-applicable",
    "archived": true,
    "hash": "3c3e52cdd4105827c78954a43caf65d632275cca",
    "submitter": {
        "id": 873,
        "url": "http://patches.dpdk.org/api/people/873/?format=api",
        "name": "王志克",
        "email": "wangzhike@jd.com"
    },
    "delegate": {
        "id": 355,
        "url": "http://patches.dpdk.org/api/users/355/?format=api",
        "username": "yliu",
        "first_name": "Yuanhan",
        "last_name": "Liu",
        "email": "yuanhan.liu@linux.intel.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/6DAF063A35010343823807B082E5681F41D84163@mbx05.360buyAD.local/mbox/",
    "series": [],
    "comments": "http://patches.dpdk.org/api/patches/32848/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/32848/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 EA8281B1B1;\n\tWed,  3 Jan 2018 09:21:29 +0100 (CET)",
            "from smtp.jd.com (smtp.jd.com [58.83.206.59])\n\tby dpdk.org (Postfix) with ESMTP id 55B231B173\n\tfor <dev@dpdk.org>; Wed,  3 Jan 2018 09:21:27 +0100 (CET)",
            "from HUB06.360buyAD.local (172.17.27.42) by HUB03.360buyAD.local\n\t(172.17.27.17) with Microsoft SMTP Server (TLS) id 14.3.361.1;\n\tWed, 3 Jan 2018 16:21:27 +0800",
            "from MBX05.360buyAD.local ([fe80::7043:229a:8a1b:2ced]) by\n\thub06.360buyAD.local ([fe80::a522:2f79:88c6:4981%15]) with mapi id\n\t14.03.0382.000; Wed, 3 Jan 2018 16:21:27 +0800"
        ],
        "From": "=?utf-8?b?546L5b+X5YWL?= <wangzhike@jd.com>",
        "To": "Tiwei Bie <tiwei.bie@intel.com>",
        "CC": "\"dev@dpdk.org\" <dev@dpdk.org>, \"bluca@debian.org\" <bluca@debian.org>,\n\t\"yliu@fridaylinux.org\" <yliu@fridaylinux.org>",
        "Thread-Topic": "net/virtio: fix vector Rx break caused by rxq flushing",
        "Thread-Index": "AdOApPV0Gq72PaRJSH2kZjTbP+YFywAOvMCAAOLhsnA=",
        "Date": "Wed, 3 Jan 2018 08:21:26 +0000",
        "Message-ID": "<6DAF063A35010343823807B082E5681F41D84163@mbx05.360buyAD.local>",
        "References": "<6DAF063A35010343823807B082E5681F41D839EF@mbx05.360buyAD.local>\n\t<20171230040209.b73z42ymlh4emjxe@debian-xvivbkq.sh.intel.com>",
        "In-Reply-To": "<20171230040209.b73z42ymlh4emjxe@debian-xvivbkq.sh.intel.com>",
        "Accept-Language": "zh-CN, en-US",
        "Content-Language": "zh-CN",
        "X-MS-Has-Attach": "",
        "X-MS-TNEF-Correlator": "",
        "x-originating-ip": "[172.17.27.83]",
        "Content-Type": "text/plain; charset=\"utf-8\"",
        "Content-Transfer-Encoding": "base64",
        "MIME-Version": "1.0",
        "Subject": "Re: [dpdk-dev] net/virtio: fix vector Rx break caused by rxq\n\tflushing",
        "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://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": "<https://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": "Hi Tiwei,\r\n\r\nThanks for your help and info.\r\n\r\nI have another question about your previous fix below.\r\nYou mentioned that \" Otherwise it will lead to incorrect packet collection for port state.\" Do you mean port statistics? Or such packets may leads to issue, like more TCP restransmission? Thanks.\r\n\r\n\r\ncommit d8227497ec5c3de75fe378e09fc9673ae097fa73\r\nAuthor: Tiwei Bie <tiwei.bie@intel.com>\r\nDate:   Fri Oct 20 10:09:28 2017 +0800\r\n\r\n    net/virtio: flush Rx queues on start\r\n\r\n    After starting a device, the driver shouldn't deliver the\r\n    packets that already existed before the device is started\r\n    to applications. Otherwise it will lead to incorrect packet\r\n    collection for port state. This patch fixes this issue by\r\n    flushing the Rx queues when starting the device.\r\n\r\n\r\nBr,\r\nWang Zhike\r\n-----Original Message-----\r\nFrom: Tiwei Bie [mailto:tiwei.bie@intel.com] \r\nSent: Saturday, December 30, 2017 12:02 PM\r\nTo: 王志克\r\nCc: dev@dpdk.org; bluca@debian.org; yliu@fridaylinux.org\r\nSubject: Re: net/virtio: fix vector Rx break caused by rxq flushing\r\n\r\nHi Zhike,\r\n\r\nOn Fri, Dec 29, 2017 at 01:02:04PM +0000, 王志克 wrote:\r\n> Hi tiwei,\r\n> \r\n> Can you please provide a patch for 16.11.4? Thanks.\r\n> \r\n\r\nNormally, most commits in the stable tree are backported\r\nfrom the commits in the mainline tree which contains below\r\nCc line:\r\n\r\nCc: stable@dpdk.org\r\n\r\nThis patch also contains such line. So after this patch\r\nis applied to the mainline tree, it will be backported.\r\n\r\nIf you need the fix right now, you can download the latest\r\npatch (which has been applied to dpdk-next-virtio tree)\r\nfrom here:\r\n\r\nhttps://dpdk.org/dev/patchwork/patch/32061/\r\n\r\nIt can be applied to DPDK 16.11.4 with the patch command.\r\nAfter the patching, one small change is needed to get it\r\nwork:\r\n\r\n\r\nBesides, I'm not sure whether you are aware of this or not.\r\nBut just FYI, when you want to use the vector Rx of virtio\r\nPMD, you need to be aware of the fact that the current\r\nimplementation of vector Rx doesn't really follow the virtio\r\nspec. You can find more details in below link:\r\n\r\nhttp://dpdk.org/ml/archives/dev/2017-December/084101.html\r\n\r\nBest regards,\r\nTiwei Bie",
    "diff": "diff --git a/drivers/net/virtio/virtqueue.c b/drivers/net/virtio/virtqueue.c\r\nindex 7fd8604..0e24194 100644\r\n--- a/drivers/net/virtio/virtqueue.c\r\n+++ b/drivers/net/virtio/virtqueue.c\r\n@@ -88,7 +88,7 @@ virtqueue_rxvq_flush(struct virtqueue *vq)\r\n \tfor (i = 0; i < nb_used; i++) {\r\n \t\tused_idx = vq->vq_used_cons_idx & (vq->vq_nentries - 1);\r\n \t\tuep = &vq->vq_ring.used->ring[used_idx];\r\n-\t\tif (hw->use_simple_rx) {\r\n+\t\tif (hw->use_simple_rxtx) {\r\n \t\t\tdesc_idx = used_idx;\r\n \t\t\trte_pktmbuf_free(vq->sw_ring[desc_idx]);\r\n \t\t\tvq->vq_free_cnt++;\r\n@@ -104,7 +104,7 @@ virtqueue_rxvq_flush(struct virtqueue *vq)\r\n \t\tvq->vq_used_cons_idx++;\r\n \t}\r\n \r\n-\tif (hw->use_simple_rx) {\r\n+\tif (hw->use_simple_rxtx) {\r\n \t\twhile (vq->vq_free_cnt >= RTE_VIRTIO_VPMD_RX_REARM_THRESH) {\r\n \t\t\tvirtio_rxq_rearm_vec(rxq);\r\n \t\t\tif (virtqueue_kick_prepare(vq))\r\n",
    "prefixes": [
        "dpdk-dev"
    ]
}