get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 54938,
    "url": "http://patches.dpdk.org/api/patches/54938/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1560924825-220648-3-git-send-email-noae@mellanox.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": "<1560924825-220648-3-git-send-email-noae@mellanox.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1560924825-220648-3-git-send-email-noae@mellanox.com",
    "date": "2019-06-19T06:13:45",
    "name": "[2/2] net/vhost: support mrg-rxbuf disabling",
    "commit_ref": null,
    "pull_url": null,
    "state": "rejected",
    "archived": true,
    "hash": "0492c2cb5aecd1f80c596562075d89cad7830545",
    "submitter": {
        "id": 1186,
        "url": "http://patches.dpdk.org/api/people/1186/?format=api",
        "name": "Noa Ezra",
        "email": "noae@mellanox.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/1560924825-220648-3-git-send-email-noae@mellanox.com/mbox/",
    "series": [
        {
            "id": 5072,
            "url": "http://patches.dpdk.org/api/series/5072/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=5072",
            "date": "2019-06-19T06:13:45",
            "name": "support tso and mrg-rxbuf disabling",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/5072/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/54938/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/54938/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 4EB721C244;\n\tWed, 19 Jun 2019 08:13:53 +0200 (CEST)",
            "from git-send-mailer.rdmz.labs.mlnx (unknown [37.142.13.130])\n\tby dpdk.org (Postfix) with ESMTP id C6CCE1C244\n\tfor <dev@dpdk.org>; Wed, 19 Jun 2019 08:13:51 +0200 (CEST)"
        ],
        "From": "Noa Ezra <noae@mellanox.com>",
        "To": "maxime.coquelin@redhat.com",
        "Cc": "matan@mellanox.com,\n\tdev@dpdk.org,\n\tnoae@mellanox.com",
        "Date": "Wed, 19 Jun 2019 06:13:45 +0000",
        "Message-Id": "<1560924825-220648-3-git-send-email-noae@mellanox.com>",
        "X-Mailer": "git-send-email 1.8.3.1",
        "In-Reply-To": "<1560924825-220648-1-git-send-email-noae@mellanox.com>",
        "References": "<1560924825-220648-1-git-send-email-noae@mellanox.com>",
        "Subject": "[dpdk-dev] [PATCH 2/2] net/vhost: support mrg-rxbuf disabling",
        "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": "Rx mergeable buffers is a virtio feature that allows chaining of\nmultiple virtio descriptors to handle large packet size.\nThis behavior is supported and enabled by default, however in case\nthe user knows that rx mergeable buffers are not needed, he can disable\nthe feature.\nThe user should also set mrg_rxbuf=off in virtual machine's xml.\n\nSigned-off-by: Noa Ezra <noae@mellanox.com>\nReviewed-by: Matan Azrad <matan@mellanox.com>\n---\n doc/guides/nics/vhost.rst         |  5 +++++\n drivers/net/vhost/rte_eth_vhost.c | 17 ++++++++++++++++-\n 2 files changed, 21 insertions(+), 1 deletion(-)",
    "diff": "diff --git a/doc/guides/nics/vhost.rst b/doc/guides/nics/vhost.rst\nindex 8cfda4d..2a455b5 100644\n--- a/doc/guides/nics/vhost.rst\n+++ b/doc/guides/nics/vhost.rst\n@@ -81,6 +81,11 @@ The user can specify below arguments in `--vdev` option.\n     It is used to disable tso support in vhost library.\n     (Default: 1 (enabled))\n \n+#.  ``mrg-rxbuf``:\n+\n+    It is used to disable mrg rxbuf support in vhost library.\n+    (Default: 1 (enabled))\n+\n Vhost PMD event handling\n ------------------------\n \ndiff --git a/drivers/net/vhost/rte_eth_vhost.c b/drivers/net/vhost/rte_eth_vhost.c\nindex a38c235..9a54020 100644\n--- a/drivers/net/vhost/rte_eth_vhost.c\n+++ b/drivers/net/vhost/rte_eth_vhost.c\n@@ -32,6 +32,7 @@\n #define ETH_VHOST_IOMMU_SUPPORT\t\t\"iommu-support\"\n #define ETH_VHOST_POSTCOPY_SUPPORT\t\"postcopy-support\"\n #define ETH_VHOST_VIRTIO_NET_F_HOST_TSO \"tso\"\n+#define ETH_VHOST_VIRTIO_NET_F_MRG_RXBUF \"mrg-rxbuf\"\n #define VHOST_MAX_PKT_BURST 32\n \n static const char *valid_arguments[] = {\n@@ -42,6 +43,7 @@\n \tETH_VHOST_IOMMU_SUPPORT,\n \tETH_VHOST_POSTCOPY_SUPPORT,\n \tETH_VHOST_VIRTIO_NET_F_HOST_TSO,\n+\tETH_VHOST_VIRTIO_NET_F_MRG_RXBUF,\n \tNULL\n };\n \n@@ -1348,6 +1350,7 @@ struct vhost_xstats_name_off {\n \tint iommu_support = 0;\n \tint postcopy_support = 0;\n \tint tso = 1;\n+\tint mrg_rxbuf = 1;\n \tstruct rte_eth_dev *eth_dev;\n \tconst char *name = rte_vdev_device_name(dev);\n \n@@ -1442,6 +1445,17 @@ struct vhost_xstats_name_off {\n \t\t}\n \t}\n \n+\tif (rte_kvargs_count(kvlist, ETH_VHOST_VIRTIO_NET_F_MRG_RXBUF) == 1) {\n+\t\tret = rte_kvargs_process(kvlist,\n+\t\t\t\tETH_VHOST_VIRTIO_NET_F_MRG_RXBUF,\n+\t\t\t\t&open_int, &mrg_rxbuf);\n+\t\tif (ret < 0)\n+\t\t\tgoto out_free;\n+\n+ \t\tif (mrg_rxbuf == 0)\n+\t\t\tdisable_flags |= (1ULL << VIRTIO_NET_F_MRG_RXBUF);\n+\t}\n+\n \tif (dev->device.numa_node == SOCKET_ID_ANY)\n \t\tdev->device.numa_node = rte_socket_id();\n \n@@ -1494,7 +1508,8 @@ struct vhost_xstats_name_off {\n \t\"dequeue-zero-copy=<0|1> \"\n \t\"iommu-support=<0|1> \"\n \t\"postcopy-support=<0|1> \"\n-\t\"tso=<0|1>\");\n+\t\"tso=<0|1> \"\n+\t\"mrg-rxbuf=<0|1>\");\n \n RTE_INIT(vhost_init_log)\n {\n",
    "prefixes": [
        "2/2"
    ]
}