Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/1368/?format=api
https://patches.dpdk.org/api/patches/1368/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/patch/1416474399-16851-6-git-send-email-mukawa@igel.co.jp/", "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": "<1416474399-16851-6-git-send-email-mukawa@igel.co.jp>", "list_archive_url": "https://inbox.dpdk.org/dev/1416474399-16851-6-git-send-email-mukawa@igel.co.jp", "date": "2014-11-20T09:06:19", "name": "[dpdk-dev,05/25] eal, ethdev: Add function pointer for closing a device", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "afcc2293bf1c92c9b80c26dc51f97e43f43699d6", "submitter": { "id": 64, "url": "https://patches.dpdk.org/api/people/64/?format=api", "name": "Tetsuya Mukawa", "email": "mukawa@igel.co.jp" }, "delegate": null, "mbox": "https://patches.dpdk.org/project/dpdk/patch/1416474399-16851-6-git-send-email-mukawa@igel.co.jp/mbox/", "series": [], "comments": "https://patches.dpdk.org/api/patches/1368/comments/", "check": "pending", "checks": "https://patches.dpdk.org/api/patches/1368/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 D09AA7F98;\n\tThu, 20 Nov 2014 09:57:01 +0100 (CET)", "from mail-pd0-f177.google.com (mail-pd0-f177.google.com\n\t[209.85.192.177]) by dpdk.org (Postfix) with ESMTP id A76AE7FAD\n\tfor <dev@dpdk.org>; Thu, 20 Nov 2014 09:56:58 +0100 (CET)", "by mail-pd0-f177.google.com with SMTP id ft15so2678291pdb.36\n\tfor <dev@dpdk.org>; Thu, 20 Nov 2014 01:07:27 -0800 (PST)", "from localhost.localdomain (napt.igel.co.jp. [219.106.231.132])\n\tby mx.google.com with ESMTPSA id\n\ta6sm1432407pbu.64.2014.11.20.01.07.24 for <multiple recipients>\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);\n\tThu, 20 Nov 2014 01:07:26 -0800 (PST)" ], "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20130820;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n\t:references;\n\tbh=SYCpqv1bQqBBRXTVJZQFiST+Hf4ICdukt0JaEL2U3As=;\n\tb=ZZtXB/aUAIXrlOXnCltyMXqW5COFMyXImCPMzLLH1wcpZUCyJYH/Vukn3w9aEl/LqX\n\tiZhPDiPrz1tOhsqqWZBgS6oWXKRtTBJapVF5nFU1zSDkoZX8RLPovpilBSA3SnVgltJd\n\tGbDrpkkGAp1XShZMNFgnTECGlZ6GxOfQ0wBIhsaXfwJ7N1xjeGcBb1EDeCsHj748QibY\n\tAYGv8KHsneyQBAIFrjn36aSRceIAW/5cT+oCH8hEeunBtwfLxxvagAwilZQ8AqyizKWa\n\tYJSy/MQKzr/xkICfzS+kbN0fdM7bk06Q+XDuPWLaE7Qe89KhlslPFaJQs3/Cxe6vUj89\n\t5llA==", "X-Gm-Message-State": "ALoCoQll/XF5454m738hovmPylLooLNhHOgFmAkYU10+xeFTKm/2HJcFr0EtuSpxIGLbx93KzkTB", "X-Received": "by 10.68.135.100 with SMTP id pr4mr28731530pbb.123.1416474447481;\n\tThu, 20 Nov 2014 01:07:27 -0800 (PST)", "From": "Tetsuya Mukawa <mukawa@igel.co.jp>", "To": "dev@dpdk.org", "Date": "Thu, 20 Nov 2014 18:06:19 +0900", "Message-Id": "<1416474399-16851-6-git-send-email-mukawa@igel.co.jp>", "X-Mailer": "git-send-email 1.9.1", "In-Reply-To": "<1416474399-16851-1-git-send-email-mukawa@igel.co.jp>", "References": "<1414572576-21371-1-git-send-email-mukawa@igel.co.jp>\n\t<1416474399-16851-1-git-send-email-mukawa@igel.co.jp>", "Cc": "nakajima.yoshihiro@lab.ntt.co.jp, menrigh@brocade.com,\n\tmasutani.hitoshi@lab.ntt.co.jp", "Subject": "[dpdk-dev] [PATCH 05/25] eal,\n\tethdev: Add function pointer for closing a device", "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": "The patch adds function pointer to rte_pci_driver and eth_driver\nstructure. These function pointers are used when ports are detached.\n\nSigned-off-by: Tetsuya Mukawa <mukawa@igel.co.jp>\n---\n lib/librte_eal/common/include/rte_pci.h | 7 +++++++\n lib/librte_ether/rte_ethdev.h | 4 ++++\n 2 files changed, 11 insertions(+)", "diff": "diff --git a/lib/librte_eal/common/include/rte_pci.h b/lib/librte_eal/common/include/rte_pci.h\nindex fe374a8..74720d1 100644\n--- a/lib/librte_eal/common/include/rte_pci.h\n+++ b/lib/librte_eal/common/include/rte_pci.h\n@@ -181,12 +181,19 @@ struct rte_pci_driver;\n typedef int (pci_devinit_t)(struct rte_pci_driver *, struct rte_pci_device *);\n \n /**\n+ * Shutdown function for the driver called during hotplugging.\n+ */\n+typedef int (pci_devshutdown_t)(\n+\t\tstruct rte_pci_driver *, struct rte_pci_device *);\n+\n+/**\n * A structure describing a PCI driver.\n */\n struct rte_pci_driver {\n \tTAILQ_ENTRY(rte_pci_driver) next; /**< Next in list. */\n \tconst char *name; /**< Driver name. */\n \tpci_devinit_t *devinit; /**< Device init. function. */\n+\tpci_devshutdown_t *devshutdown; /**< Device shutdown function. */\n \tstruct rte_pci_id *id_table; /**< ID table, NULL terminated. */\n \tuint32_t drv_flags; /**< Flags contolling handling of device. */\n };\ndiff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h\nindex 548467c..558d4d3 100644\n--- a/lib/librte_ether/rte_ethdev.h\n+++ b/lib/librte_ether/rte_ethdev.h\n@@ -1696,6 +1696,9 @@ struct eth_driver;\n typedef int (*eth_dev_init_t)(struct eth_driver *eth_drv,\n \t\t\t struct rte_eth_dev *eth_dev);\n \n+typedef int (*eth_dev_shutdown_t)(struct eth_driver *eth_drv,\n+\t\t\t\t struct rte_eth_dev *eth_dev);\n+\n /**\n * @internal\n * The structure associated with a PMD Ethernet driver.\n@@ -1712,6 +1715,7 @@ typedef int (*eth_dev_init_t)(struct eth_driver *eth_drv,\n struct eth_driver {\n \tstruct rte_pci_driver pci_drv; /**< The PMD is also a PCI driver. */\n \teth_dev_init_t eth_dev_init; /**< Device init function. */\n+\teth_dev_shutdown_t eth_dev_shutdown;/**< Device shutdown function. */\n \tunsigned int dev_private_size; /**< Size of device private data. */\n };\n \n", "prefixes": [ "dpdk-dev", "05/25" ] }{ "id": 1368, "url": "