get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 32342,
    "url": "http://patches.dpdk.org/api/patches/32342/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20171218025047.a6ofepaey2ztozd3@debian-xvivbkq/",
    "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": "<20171218025047.a6ofepaey2ztozd3@debian-xvivbkq>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20171218025047.a6ofepaey2ztozd3@debian-xvivbkq",
    "date": "2017-12-18T02:50:47",
    "name": "[dpdk-dev] net/virtio: fix Rx and Tx handler selection for arm32",
    "commit_ref": null,
    "pull_url": null,
    "state": "not-applicable",
    "archived": true,
    "hash": "34dd453f86d3932f3833ca75f41311d506299ab7",
    "submitter": {
        "id": 617,
        "url": "http://patches.dpdk.org/api/people/617/?format=api",
        "name": "Tiwei Bie",
        "email": "tiwei.bie@intel.com"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20171218025047.a6ofepaey2ztozd3@debian-xvivbkq/mbox/",
    "series": [],
    "comments": "http://patches.dpdk.org/api/patches/32342/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/32342/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 0DA542C2B;\n\tMon, 18 Dec 2017 03:51:21 +0100 (CET)",
            "from mga07.intel.com (mga07.intel.com [134.134.136.100])\n\tby dpdk.org (Postfix) with ESMTP id 39B232BF7;\n\tMon, 18 Dec 2017 03:51:18 +0100 (CET)",
            "from fmsmga004.fm.intel.com ([10.253.24.48])\n\tby orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t17 Dec 2017 18:51:17 -0800",
            "from deepin-15.sh.intel.com (HELO debian-xvivbkq) ([10.67.104.165])\n\tby fmsmga004.fm.intel.com with ESMTP; 17 Dec 2017 18:51:16 -0800"
        ],
        "X-Amp-Result": "UNSCANNABLE",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.45,419,1508828400\"; d=\"scan'208\";a=\"13453957\"",
        "Date": "Mon, 18 Dec 2017 10:50:47 +0800",
        "From": "Tiwei Bie <tiwei.bie@intel.com>",
        "To": "Olivier Matz <olivier.matz@6wind.com>",
        "Cc": "dev@dpdk.org, Yuanhan Liu <yliu@fridaylinux.org>,\n\tMaxime Coquelin <maxime.coquelin@redhat.com>,\n\tSamuel Gauthier <samuel.gauthier@6wind.com>, stable@dpdk.org",
        "Message-ID": "<20171218025047.a6ofepaey2ztozd3@debian-xvivbkq>",
        "References": "<20171214143213.28577-1-olivier.matz@6wind.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=utf-8",
        "Content-Disposition": "inline",
        "In-Reply-To": "<20171214143213.28577-1-olivier.matz@6wind.com>",
        "User-Agent": "NeoMutt/20170609 (1.8.3)",
        "Subject": "Re: [dpdk-dev] [PATCH] net/virtio: fix Rx and Tx handler selection\n\tfor arm32",
        "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": "On Thu, Dec 14, 2017 at 03:32:13PM +0100, Olivier Matz wrote:\n> From: Samuel Gauthier <samuel.gauthier@6wind.com>\n> \n> On arm32, we were always selecting the simple handler, but it is only\n> available if neon is present.\n> \n> This is due to a typo in the name of the config option.\n> CONFIG_RTE_ARCH_ARM is for Makefiles. One should use RTE_ARCH_ARM.\n> \n> Fixes: 2d7c37194ee4 (\"net/virtio: add NEON based Rx handler\")\n> Cc: stable@dpdk.org\n\nHi Olivier,\n\nMy comment isn't really related to this patch, but related\nto the commit it fixes and some related commits from you.\n\nThe commit (2d7c37194ee4) specified by the fixline doesn't\nreally cause the problem described in the commit log:\n\n\"On arm32, we were always selecting the simple handler, ...\"\n\nActually, it will cause the simple handler won't be chosen\non arm32. Below is the relevant part (use_simple_rxtx won't\nget a chance to be updated to 1 on arm32):\n\n\nIt's the below commits (together with the above commit)\ncaused the simple handler will always be chosen on arm32:\n\n4819eae8d94b (\"net/virtio: rationalize setting of Rx/Tx handlers\")\n0964936308cd (\"net/virtio: keep Rx handler whatever the Tx queue config\")\n\nFor the above two commits, I think they have some other\nproblems. From my understanding, vector Rx function of\nvirtio PMD doesn't really follow the virtio spec. It\nassumes the desc idx in the used ring will be written by\nthe backend in an expected order (i.e. the same order in\navail ring). So it even doesn't read the id field from\nthe used_elem to get the desc idx (but actually it should,\nunless we change the virtio spec). It seems that simple\nTx function also has similar problem.\n\nSo IMO, we shouldn't choose the simple functions on all\nplatforms unless users enable them explicitly as we can't\nguarantee they will work with all backends. So maybe the\nproblems can be fixed further? Any thoughts?\n\nBest regards,\nTiwei Bie\n\n> \n> Signed-off-by: Samuel Gauthier <samuel.gauthier@6wind.com>\n> ---\n>  drivers/net/virtio/virtio_ethdev.c | 2 +-\n>  1 file changed, 1 insertion(+), 1 deletion(-)\n> \n> diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c\n> index e0328f61d..c0ba83b06 100644\n> --- a/drivers/net/virtio/virtio_ethdev.c\n> +++ b/drivers/net/virtio/virtio_ethdev.c\n> @@ -1784,7 +1784,7 @@ virtio_dev_configure(struct rte_eth_dev *dev)\n>  \thw->use_simple_rx = 1;\n>  \thw->use_simple_tx = 1;\n>  \n> -#if defined RTE_ARCH_ARM64 || defined CONFIG_RTE_ARCH_ARM\n> +#if defined RTE_ARCH_ARM64 || defined RTE_ARCH_ARM\n>  \tif (!rte_cpu_get_flag_enabled(RTE_CPUFLAG_NEON)) {\n>  \t\thw->use_simple_rx = 0;\n>  \t\thw->use_simple_tx = 0;\n> -- \n> 2.11.0\n>",
    "diff": "diff --git a/drivers/net/virtio/virtio_rxtx.c b/drivers/net/virtio/virtio_rxtx.c\nindex 0e369bd12..9ab441bc3 100644\n--- a/drivers/net/virtio/virtio_rxtx.c\n+++ b/drivers/net/virtio/virtio_rxtx.c\n@@ -488,6 +488,9 @@ virtio_update_rxtx_handler(struct rte_eth_dev *dev,\n #if defined RTE_ARCH_X86\n \tif (rte_cpu_get_flag_enabled(RTE_CPUFLAG_SSE3))\n \t\tuse_simple_rxtx = 1;\n+#elif defined RTE_ARCH_ARM64 || defined CONFIG_RTE_ARCH_ARM\n+\tif (rte_cpu_get_flag_enabled(RTE_CPUFLAG_NEON))\n+\t\tuse_simple_rxtx = 1;\n #endif\n \t/* Use simple rx/tx func if single segment and no offloads */\n \tif (use_simple_rxtx &&\n",
    "prefixes": [
        "dpdk-dev"
    ]
}