get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 83309,
    "url": "https://patches.dpdk.org/api/patches/83309/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/1604273415-13912-8-git-send-email-timothy.mcdaniel@intel.com/",
    "project": {
        "id": 1,
        "url": "https://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": "<1604273415-13912-8-git-send-email-timothy.mcdaniel@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1604273415-13912-8-git-send-email-timothy.mcdaniel@intel.com",
    "date": "2020-11-01T23:29:59",
    "name": "[v16,07/23] event/dlb: add flexible interface",
    "commit_ref": null,
    "pull_url": null,
    "state": "changes-requested",
    "archived": true,
    "hash": "40feab2564d0bdd8bf3891a0c8a9bcfe841712f4",
    "submitter": {
        "id": 826,
        "url": "https://patches.dpdk.org/api/people/826/?format=api",
        "name": "Timothy McDaniel",
        "email": "timothy.mcdaniel@intel.com"
    },
    "delegate": {
        "id": 310,
        "url": "https://patches.dpdk.org/api/users/310/?format=api",
        "username": "jerin",
        "first_name": "Jerin",
        "last_name": "Jacob",
        "email": "jerinj@marvell.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/1604273415-13912-8-git-send-email-timothy.mcdaniel@intel.com/mbox/",
    "series": [
        {
            "id": 13540,
            "url": "https://patches.dpdk.org/api/series/13540/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=13540",
            "date": "2020-11-01T23:29:52",
            "name": "Add DLB PMD",
            "version": 16,
            "mbox": "https://patches.dpdk.org/series/13540/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/83309/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/83309/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 4E940A04E7;\n\tMon,  2 Nov 2020 00:30:46 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 6521337AF;\n\tMon,  2 Nov 2020 00:28:46 +0100 (CET)",
            "from mga12.intel.com (mga12.intel.com [192.55.52.136])\n by dpdk.org (Postfix) with ESMTP id 3BC8D1E2B\n for <dev@dpdk.org>; Mon,  2 Nov 2020 00:28:37 +0100 (CET)",
            "from fmsmga007.fm.intel.com ([10.253.24.52])\n by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 01 Nov 2020 15:28:36 -0800",
            "from txasoft-yocto.an.intel.com ([10.123.72.192])\n by fmsmga007.fm.intel.com with ESMTP; 01 Nov 2020 15:28:36 -0800"
        ],
        "IronPort-SDR": [
            "\n ulPuwiIGG61+/GnKxpSFVXJPf2bauzT+miTFTx45G0rkcCYRUFhnm8vV3y2sIB+sV7/IoYPGox\n 0+SHWUfkILFA==",
            "\n Vm+Ppk3A3f8nOts1YKy/WqZhybxPDSB4KPaLCwIbskw726tUXJa5u1VWkHhiGkeeuCUZ2ejlfX\n y7Rb60rLXXhw=="
        ],
        "X-IronPort-AV": [
            "E=McAfee;i=\"6000,8403,9792\"; a=\"148099226\"",
            "E=Sophos;i=\"5.77,443,1596524400\"; d=\"scan'208\";a=\"148099226\"",
            "E=Sophos;i=\"5.77,443,1596524400\"; d=\"scan'208\";a=\"305521515\""
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "From": "Timothy McDaniel <timothy.mcdaniel@intel.com>",
        "To": "",
        "Cc": "dev@dpdk.org, erik.g.carrillo@intel.com, gage.eads@intel.com,\n harry.van.haaren@intel.com, jerinj@marvell.com, thomas@monjalon.net",
        "Date": "Sun,  1 Nov 2020 17:29:59 -0600",
        "Message-Id": "<1604273415-13912-8-git-send-email-timothy.mcdaniel@intel.com>",
        "X-Mailer": "git-send-email 1.7.10",
        "In-Reply-To": "<1604273415-13912-1-git-send-email-timothy.mcdaniel@intel.com>",
        "References": "<20200612212434.6852-2-timothy.mcdaniel@intel.com>\n <1604273415-13912-1-git-send-email-timothy.mcdaniel@intel.com>",
        "Subject": "[dpdk-dev] [PATCH v16 07/23] event/dlb: add flexible interface",
        "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 <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 <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "This commit introduces the flexible interface. This\ninterface allows the core code to operate in PF mode (direct\nhardware access) or bifurcated mode (hardware configured via\nkernel driver). This driver currently only supports PF modei,\nbut bifurcated mode will be added in a future patch-set.\nNote that the flexible interface is not used for data path\noperations, and thus there are no performance concerns\nrelated to the use of function pointers.\n\nSigned-off-by: Timothy McDaniel <timothy.mcdaniel@intel.com>\nReviewed-by: Gage Eads <gage.eads@intel.com>\n---\n drivers/event/dlb/dlb.c       |  1 +\n drivers/event/dlb/dlb_iface.c | 27 +++++++++++++++++++++++++++\n drivers/event/dlb/dlb_iface.h | 27 +++++++++++++++++++++++++++\n drivers/event/dlb/meson.build |  1 +\n drivers/event/dlb/pf/dlb_pf.c |  1 +\n 5 files changed, 57 insertions(+)\n create mode 100644 drivers/event/dlb/dlb_iface.c\n create mode 100644 drivers/event/dlb/dlb_iface.h",
    "diff": "diff --git a/drivers/event/dlb/dlb.c b/drivers/event/dlb/dlb.c\nindex 1659f93..8008a50 100644\n--- a/drivers/event/dlb/dlb.c\n+++ b/drivers/event/dlb/dlb.c\n@@ -33,6 +33,7 @@\n #include <rte_eventdev_pmd.h>\n \n #include \"dlb_priv.h\"\n+#include \"dlb_iface.h\"\n #include \"dlb_inline_fns.h\"\n \n /*\ndiff --git a/drivers/event/dlb/dlb_iface.c b/drivers/event/dlb/dlb_iface.c\nnew file mode 100644\nindex 0000000..dd72120\n--- /dev/null\n+++ b/drivers/event/dlb/dlb_iface.c\n@@ -0,0 +1,27 @@\n+/* SPDX-License-Identifier: BSD-3-Clause\n+ * Copyright(c) 2016-2020 Intel Corporation\n+ */\n+\n+#include <stdint.h>\n+\n+#include \"dlb_priv.h\"\n+\n+/* DLB PMD Internal interface function pointers.\n+ * If VDEV (bifurcated PMD),  these will resolve to functions that issue ioctls\n+ * serviced by DLB kernel module.\n+ * If PCI (PF PMD),  these will be implemented locally in user mode.\n+ */\n+\n+void (*dlb_iface_low_level_io_init)(struct dlb_eventdev *dlb);\n+\n+int (*dlb_iface_open)(struct dlb_hw_dev *handle, const char *name);\n+\n+int (*dlb_iface_get_device_version)(struct dlb_hw_dev *handle,\n+\t\t\t\t    uint8_t *revision);\n+\n+int (*dlb_iface_get_num_resources)(struct dlb_hw_dev *handle,\n+\t\t\t\t   struct dlb_get_num_resources_args *rsrcs);\n+\n+int (*dlb_iface_get_cq_poll_mode)(struct dlb_hw_dev *handle,\n+\t\t\t\t  enum dlb_cq_poll_modes *mode);\n+\ndiff --git a/drivers/event/dlb/dlb_iface.h b/drivers/event/dlb/dlb_iface.h\nnew file mode 100644\nindex 0000000..416d1b3\n--- /dev/null\n+++ b/drivers/event/dlb/dlb_iface.h\n@@ -0,0 +1,27 @@\n+/* SPDX-License-Identifier: BSD-3-Clause\n+ * Copyright(c) 2016-2020 Intel Corporation\n+ */\n+\n+#ifndef _DLB_IFACE_H\n+#define _DLB_IFACE_H\n+\n+/* DLB PMD Internal interface function pointers.\n+ * If VDEV (bifurcated PMD), these will resolve to functions that issue ioctls\n+ * serviced by DLB kernel module.\n+ * If PCI (PF PMD), these will be implemented locally in user mode.\n+ */\n+\n+extern void (*dlb_iface_low_level_io_init)(struct dlb_eventdev *dlb);\n+\n+extern int (*dlb_iface_open)(struct dlb_hw_dev *handle, const char *name);\n+\n+extern int (*dlb_iface_get_device_version)(struct dlb_hw_dev *handle,\n+\t\t\t\t\t   uint8_t *revision);\n+\n+extern int (*dlb_iface_get_num_resources)(struct dlb_hw_dev *handle,\n+\t\t\t\t   struct dlb_get_num_resources_args *rsrcs);\n+\n+extern int (*dlb_iface_get_cq_poll_mode)(struct dlb_hw_dev *handle,\n+\t\t\t\t\t enum dlb_cq_poll_modes *mode);\n+\n+#endif /* _DLB_IFACE_H */\ndiff --git a/drivers/event/dlb/meson.build b/drivers/event/dlb/meson.build\nindex 61c0182..0e66cdc 100644\n--- a/drivers/event/dlb/meson.build\n+++ b/drivers/event/dlb/meson.build\n@@ -8,6 +8,7 @@ if not is_linux or not dpdk_conf.has('RTE_ARCH_X86_64')\n endif\n \n sources = files('dlb.c',\n+\t\t'dlb_iface.c',\n \t\t'pf/dlb_main.c',\n \t\t'pf/dlb_pf.c'\n )\ndiff --git a/drivers/event/dlb/pf/dlb_pf.c b/drivers/event/dlb/pf/dlb_pf.c\nindex 3f836f3..05fd76c 100644\n--- a/drivers/event/dlb/pf/dlb_pf.c\n+++ b/drivers/event/dlb/pf/dlb_pf.c\n@@ -27,6 +27,7 @@\n #include <rte_string_fns.h>\n \n #include \"../dlb_priv.h\"\n+#include \"../dlb_iface.h\"\n #include \"../dlb_inline_fns.h\"\n #include \"dlb_main.h\"\n #include \"base/dlb_hw_types.h\"\n",
    "prefixes": [
        "v16",
        "07/23"
    ]
}