get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 17075,
    "url": "http://patches.dpdk.org/api/patches/17075/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1479392685-19608-2-git-send-email-jblunck@infradead.org/",
    "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": "<1479392685-19608-2-git-send-email-jblunck@infradead.org>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1479392685-19608-2-git-send-email-jblunck@infradead.org",
    "date": "2016-11-17T14:24:45",
    "name": "[dpdk-dev,2/2] Move non-PCI related eth_dev initialization to rte_eth_dev_allocate()",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "e15a44a358003f61dd056a2ec889745314fe4e60",
    "submitter": {
        "id": 249,
        "url": "http://patches.dpdk.org/api/people/249/?format=api",
        "name": "Jan Blunck",
        "email": "jblunck@infradead.org"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1479392685-19608-2-git-send-email-jblunck@infradead.org/mbox/",
    "series": [],
    "comments": "http://patches.dpdk.org/api/patches/17075/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/17075/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 9BA985680;\n\tThu, 17 Nov 2016 15:25:42 +0100 (CET)",
            "from mail-wm0-f67.google.com (mail-wm0-f67.google.com\n\t[74.125.82.67]) by dpdk.org (Postfix) with ESMTP id C88EE5587\n\tfor <dev@dpdk.org>; Thu, 17 Nov 2016 15:25:13 +0100 (CET)",
            "by mail-wm0-f67.google.com with SMTP id g23so21842206wme.1\n\tfor <dev@dpdk.org>; Thu, 17 Nov 2016 06:25:13 -0800 (PST)",
            "from weierstrass.local.net ([91.200.110.70])\n\tby smtp.gmail.com with ESMTPSA id\n\tkq7sm3512737wjb.30.2016.11.17.06.25.12 for <dev@dpdk.org>\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tThu, 17 Nov 2016 06:25:12 -0800 (PST)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;\n\th=sender:from:to:subject:date:message-id:in-reply-to:references;\n\tbh=jFwFyEiBhdbAIQHDU1eymBtc5A2kCSBaG/gJXyI4NsE=;\n\tb=jARYrBuE7C6Lzh5F6aFEEgz3fIAa0+hAJQzeDDcdwBIOT+GSJX95UDfjNlbaqx103V\n\t9xjIMz4d1DdOlxrXSnNxvNTsd8TrU9ctlArqqCFR3lkhU0g2ppwRr7wbr6FFXsD6DSO8\n\tv3oVUmA6yr8YmUvUKvZSQmplc7jm4jumztQUp3DTR4DWV9+34CzLbcAQMJ7Yf1OQkjZ7\n\ty1K81wNJ61X7CSATc0KooFlzZ+o05IKCLHZ+Uw3KwE58XZxumwGNw/fxhPsf9aOQB2NU\n\tkOZBIeBnjJK8WH/omqETTcQFgUqLpXSKLt2X5G0xWjTmxnXkqRSGSsAvT4J8N7UE3Hkk\n\tla1w==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20130820;\n\th=x-gm-message-state:sender:from:to:subject:date:message-id\n\t:in-reply-to:references;\n\tbh=jFwFyEiBhdbAIQHDU1eymBtc5A2kCSBaG/gJXyI4NsE=;\n\tb=MV4VFk8FcLGvEmjlJb8/G13wGoX8bvOgLLDJhGKk7z6Rv5Qpwh4EhKRq8YCB0LTF86\n\tvGP5/S/Vi1ICYXd8NIagdiVJx6z5Ted1FWp3LlHDXcl+roHpojtSIkurfJZNQCAZ2nmI\n\t1qh4cUfPPFevE5Ci0amRWHn1VoWsns5672r9JcjpB/cMWVDmGEOaaCxKOPJvvdUOn/dX\n\teU/rtTqJ+YsmGAhs+OzPqv2msXEkpRbveP7vPUz/iAENPMapywJWkhQAa9kbQq9uGyXp\n\t6BodgZQPgh5NnJ2GGxpI/A+dRbDRhrBym6TtvMSN1iUN0X5x8sBKHuCqb7evAX5qPhTK\n\tH7lQ==",
        "X-Gm-Message-State": "AKaTC02EMDQo+raUw1L3mmQlEVNGVMZpooS1oUY2HvbPsm2HSXKjUQ79c7ALri8UelGejg==",
        "X-Received": "by 10.28.24.74 with SMTP id 71mr4656022wmy.74.1479392712991;\n\tThu, 17 Nov 2016 06:25:12 -0800 (PST)",
        "From": "Jan Blunck <jblunck@infradead.org>",
        "To": "dev@dpdk.org",
        "Date": "Thu, 17 Nov 2016 15:24:45 +0100",
        "Message-Id": "<1479392685-19608-2-git-send-email-jblunck@infradead.org>",
        "X-Mailer": "git-send-email 2.7.4",
        "In-Reply-To": "<1479392685-19608-1-git-send-email-jblunck@infradead.org>",
        "References": "<1479392685-19608-1-git-send-email-jblunck@infradead.org>",
        "Subject": "[dpdk-dev] [PATCH 2/2] Move non-PCI related eth_dev initialization\n\tto rte_eth_dev_allocate()",
        "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": "This moves the non-PCI related initialization of the link state interrupt\ncallback list and the setting of the default MTU to rte_eth_dev_allocate()\nso that drivers only need to set non-default values.\n\nSigned-off-by: Jan Blunck <jblunck@infradead.org>\n---\n drivers/net/bonding/rte_eth_bond_api.c |  2 --\n drivers/net/cxgbe/cxgbe_main.c         |  2 --\n drivers/net/mlx4/mlx4.c                |  2 --\n drivers/net/mlx5/mlx5.c                |  3 ---\n drivers/net/null/rte_eth_null.c        |  2 --\n drivers/net/ring/rte_eth_ring.c        |  2 --\n drivers/net/vhost/rte_eth_vhost.c      |  2 --\n lib/librte_ether/rte_ethdev.c          | 12 ++++--------\n 8 files changed, 4 insertions(+), 23 deletions(-)",
    "diff": "diff --git a/drivers/net/bonding/rte_eth_bond_api.c b/drivers/net/bonding/rte_eth_bond_api.c\nindex 2a3893a..18237a3 100644\n--- a/drivers/net/bonding/rte_eth_bond_api.c\n+++ b/drivers/net/bonding/rte_eth_bond_api.c\n@@ -200,8 +200,6 @@ rte_eth_bond_create(const char *name, uint8_t mode, uint8_t socket_id)\n \teth_dev->data->nb_rx_queues = (uint16_t)1;\n \teth_dev->data->nb_tx_queues = (uint16_t)1;\n \n-\tTAILQ_INIT(&(eth_dev->link_intr_cbs));\n-\n \teth_dev->data->dev_link.link_status = ETH_LINK_DOWN;\n \n \teth_dev->data->mac_addrs = rte_zmalloc_socket(name, ETHER_ADDR_LEN, 0,\ndiff --git a/drivers/net/cxgbe/cxgbe_main.c b/drivers/net/cxgbe/cxgbe_main.c\nindex 922155b..9e8402b 100644\n--- a/drivers/net/cxgbe/cxgbe_main.c\n+++ b/drivers/net/cxgbe/cxgbe_main.c\n@@ -1172,8 +1172,6 @@ int cxgbe_probe(struct adapter *adapter)\n \n \t\trte_eth_copy_pci_info(pi->eth_dev, pi->eth_dev->pci_dev);\n \n-\t\tTAILQ_INIT(&pi->eth_dev->link_intr_cbs);\n-\n \t\tpi->eth_dev->data->mac_addrs = rte_zmalloc(name,\n \t\t\t\t\t\t\t   ETHER_ADDR_LEN, 0);\n \t\tif (!pi->eth_dev->data->mac_addrs) {\ndiff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c\nindex 9264242..d815a52 100644\n--- a/drivers/net/mlx4/mlx4.c\n+++ b/drivers/net/mlx4/mlx4.c\n@@ -5834,7 +5834,6 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev)\n \t\t\teth_dev->rx_pkt_burst = mlx4_rx_burst_secondary_setup;\n \t\t} else {\n \t\t\teth_dev->data->dev_private = priv;\n-\t\t\teth_dev->data->mtu = ETHER_MTU;\n \t\t\teth_dev->data->mac_addrs = priv->mac;\n \t\t}\n \t\teth_dev->pci_dev = pci_dev;\n@@ -5845,7 +5844,6 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev)\n \n \t\tpriv->dev = eth_dev;\n \t\teth_dev->dev_ops = &mlx4_dev_ops;\n-\t\tTAILQ_INIT(&eth_dev->link_intr_cbs);\n \n \t\t/* Bring Ethernet device up. */\n \t\tDEBUG(\"forcing Ethernet interface up\");\ndiff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c\nindex b57cad1..0e91f02 100644\n--- a/drivers/net/mlx5/mlx5.c\n+++ b/drivers/net/mlx5/mlx5.c\n@@ -652,7 +652,6 @@ mlx5_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev)\n \t\t\teth_dev->rx_pkt_burst = mlx5_rx_burst_secondary_setup;\n \t\t} else {\n \t\t\teth_dev->data->dev_private = priv;\n-\t\t\teth_dev->data->mtu = ETHER_MTU;\n \t\t\teth_dev->data->mac_addrs = priv->mac;\n \t\t}\n \n@@ -662,8 +661,6 @@ mlx5_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev)\n \t\tpriv->dev = eth_dev;\n \t\teth_dev->dev_ops = &mlx5_dev_ops;\n \n-\t\tTAILQ_INIT(&eth_dev->link_intr_cbs);\n-\n \t\t/* Bring Ethernet device up. */\n \t\tDEBUG(\"forcing Ethernet interface up\");\n \t\tpriv_set_flags(priv, ~IFF_UP, IFF_UP);\ndiff --git a/drivers/net/null/rte_eth_null.c b/drivers/net/null/rte_eth_null.c\nindex 836d982..f09caf1 100644\n--- a/drivers/net/null/rte_eth_null.c\n+++ b/drivers/net/null/rte_eth_null.c\n@@ -550,8 +550,6 @@ eth_dev_null_create(const char *name,\n \teth_dev->data = data;\n \teth_dev->dev_ops = &ops;\n \n-\tTAILQ_INIT(&eth_dev->link_intr_cbs);\n-\n \teth_dev->driver = NULL;\n \tdata->dev_flags = RTE_ETH_DEV_DETACHABLE;\n \tdata->kdrv = RTE_KDRV_NONE;\ndiff --git a/drivers/net/ring/rte_eth_ring.c b/drivers/net/ring/rte_eth_ring.c\nindex c1767c4..c7726f4 100644\n--- a/drivers/net/ring/rte_eth_ring.c\n+++ b/drivers/net/ring/rte_eth_ring.c\n@@ -346,8 +346,6 @@ do_eth_dev_ring_create(const char *name,\n \tdata->drv_name = drivername;\n \tdata->numa_node = numa_node;\n \n-\tTAILQ_INIT(&(eth_dev->link_intr_cbs));\n-\n \t/* finally assign rx and tx ops */\n \teth_dev->rx_pkt_burst = eth_ring_rx;\n \teth_dev->tx_pkt_burst = eth_ring_tx;\ndiff --git a/drivers/net/vhost/rte_eth_vhost.c b/drivers/net/vhost/rte_eth_vhost.c\nindex 766d4ef..1912346 100644\n--- a/drivers/net/vhost/rte_eth_vhost.c\n+++ b/drivers/net/vhost/rte_eth_vhost.c\n@@ -1032,8 +1032,6 @@ eth_dev_vhost_create(const char *name, char *iface_name, int16_t queues,\n \tif (vring_state == NULL)\n \t\tgoto error;\n \n-\tTAILQ_INIT(&eth_dev->link_intr_cbs);\n-\n \t/* now put it all together\n \t * - store queue data in internal,\n \t * - store numa_node info in ethdev data\ndiff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c\nindex 12af4b1..f58a995 100644\n--- a/lib/librte_ether/rte_ethdev.c\n+++ b/lib/librte_ether/rte_ethdev.c\n@@ -215,6 +215,10 @@ rte_eth_dev_allocate(const char *name)\n \tmemset(eth_dev->data, 0, sizeof(*eth_dev->data));\n \tsnprintf(eth_dev->data->name, sizeof(eth_dev->data->name), \"%s\", name);\n \teth_dev->data->port_id = port_id;\n+\teth_dev->data->rx_mbuf_alloc_failed = 0;\n+\teth_dev->data->mtu = ETHER_MTU;\n+\tTAILQ_INIT(&(eth_dev->link_intr_cbs));\n+\n \teth_dev->attached = DEV_ATTACHED;\n \teth_dev_last_created_port = port_id;\n \tnb_ports++;\n@@ -261,14 +265,6 @@ rte_eth_dev_pci_probe(struct rte_pci_driver *pci_drv,\n \teth_dev->pci_dev = pci_dev;\n \teth_dev->driver = eth_drv;\n \n-\t/* init user callbacks */\n-\tTAILQ_INIT(&(eth_dev->link_intr_cbs));\n-\n-\t/*\n-\t * Set the default MTU.\n-\t */\n-\teth_dev->data->mtu = ETHER_MTU;\n-\n \t/* Invoke PMD device initialization function */\n \tdiag = (*eth_drv->eth_dev_init)(eth_dev);\n \tif (diag == 0)\n",
    "prefixes": [
        "dpdk-dev",
        "2/2"
    ]
}