get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 14900,
    "url": "http://patches.dpdk.org/api/patches/14900/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1468936391-138371-1-git-send-email-jianfeng.tan@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": "<1468936391-138371-1-git-send-email-jianfeng.tan@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1468936391-138371-1-git-send-email-jianfeng.tan@intel.com",
    "date": "2016-07-19T13:53:11",
    "name": "[dpdk-dev] examples/vhost: fix perf regression",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "64c2777e8c7045599b934f3b25aeec3be67eac7c",
    "submitter": {
        "id": 313,
        "url": "http://patches.dpdk.org/api/people/313/?format=api",
        "name": "Jianfeng Tan",
        "email": "jianfeng.tan@intel.com"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1468936391-138371-1-git-send-email-jianfeng.tan@intel.com/mbox/",
    "series": [],
    "comments": "http://patches.dpdk.org/api/patches/14900/comments/",
    "check": "pending",
    "checks": "http://patches.dpdk.org/api/patches/14900/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 [IPv6:::1])\n\tby dpdk.org (Postfix) with ESMTP id 80CE04A65;\n\tTue, 19 Jul 2016 15:53:34 +0200 (CEST)",
            "from mga11.intel.com (mga11.intel.com [192.55.52.93])\n\tby dpdk.org (Postfix) with ESMTP id 058C9379B\n\tfor <dev@dpdk.org>; Tue, 19 Jul 2016 15:53:32 +0200 (CEST)",
            "from fmsmga002.fm.intel.com ([10.253.24.26])\n\tby fmsmga102.fm.intel.com with ESMTP; 19 Jul 2016 06:53:30 -0700",
            "from dpdk06.sh.intel.com ([10.239.129.195])\n\tby fmsmga002.fm.intel.com with ESMTP; 19 Jul 2016 06:53:28 -0700"
        ],
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos; i=\"5.28,389,1464678000\"; d=\"scan'208\";\n\ta=\"1024793361\"",
        "From": "Jianfeng Tan <jianfeng.tan@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "yuanhan.liu@linux.intel.com, zhihong.wang@intel.com,\n\tJianfeng Tan <jianfeng.tan@intel.com>",
        "Date": "Tue, 19 Jul 2016 13:53:11 +0000",
        "Message-Id": "<1468936391-138371-1-git-send-email-jianfeng.tan@intel.com>",
        "X-Mailer": "git-send-email 2.7.4",
        "Subject": "[dpdk-dev] [PATCH] examples/vhost: fix perf regression",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "patches and discussions about DPDK <dev.dpdk.org>",
        "List-Unsubscribe": "<http://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": "<http://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": "We find significant perfermance drop introduced by below commit,\nwhen vhost example is started with --mergeable 0 and inside vm,\nkernel virtio-net driver is used to do ip based forwarding.\n\nThe root cause is that below commit adds support for\nVIRTIO_NET_F_GUEST_TSO4 and VIRTIO_NET_F_GUEST_TSO6, and when\nmergeable is disabled, it triggers big_packets path of virtio-net\ndriver. In this path, virtio driver uses 19 desc with 18 4K-sized\npages to receive each packet, so that it can receive a big packet\nwith size of 64K. But QEMU only creates 256 desc entries for each\nvq, which results in that only 13 packets can be received. VM\nkernel can quickly handle those packets and go to sleep (HLT).\n\nAs QEMU has no option to set the desc entries of a vq, so here,\nwe disable VIRTIO_NET_F_GUEST_TSO4 and VIRTIO_NET_F_GUEST_TSO6\nwith VIRTIO_NET_F_HOST_TSO4 and VIRTIO_NET_F_HOST_TSO6 when we\ndisable tso of vhost example, to avoid VM kernel virtio driver\ngo into big_packets path.\n\nFixes: 859b480d5afd (\"vhost: add guest offload setting\")\n\nReported-by: Qian Xu <qian.q.xu@intel.com>\nSigned-off-by: Jianfeng Tan <jianfeng.tan@intel.com>\n---\n examples/vhost/main.c | 2 ++\n 1 file changed, 2 insertions(+)",
    "diff": "diff --git a/examples/vhost/main.c b/examples/vhost/main.c\nindex 3b98f42..92a9823 100644\n--- a/examples/vhost/main.c\n+++ b/examples/vhost/main.c\n@@ -327,6 +327,8 @@ port_init(uint8_t port)\n \tif (enable_tso == 0) {\n \t\trte_vhost_feature_disable(1ULL << VIRTIO_NET_F_HOST_TSO4);\n \t\trte_vhost_feature_disable(1ULL << VIRTIO_NET_F_HOST_TSO6);\n+\t\trte_vhost_feature_disable(1ULL << VIRTIO_NET_F_GUEST_TSO4);\n+\t\trte_vhost_feature_disable(1ULL << VIRTIO_NET_F_GUEST_TSO6);\n \t}\n \n \trx_rings = (uint16_t)dev_info.max_rx_queues;\n",
    "prefixes": [
        "dpdk-dev"
    ]
}