From patchwork Thu Nov 17 17:16:11 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Blunck X-Patchwork-Id: 17076 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 341285591; Thu, 17 Nov 2016 18:16:33 +0100 (CET) Received: from mail-wm0-f66.google.com (mail-wm0-f66.google.com [74.125.82.66]) by dpdk.org (Postfix) with ESMTP id D6686558A for ; Thu, 17 Nov 2016 18:16:31 +0100 (CET) Received: by mail-wm0-f66.google.com with SMTP id m203so23158413wma.3 for ; Thu, 17 Nov 2016 09:16:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id; bh=BMe3xVQKSL82Mx0TpQvDl5KS2BidssXTpA+Wcv2L41w=; b=PetQwgs85MiY4kvWIHUjiXe+8lCMZ5yC8Kft7YVEimKnAOrbpKKpGqbS+tQObfBtj7 jE0VGInwIHoMT6PVgkpTTa3RNgXa5ucfcqEbVKq+COwv4gWeAWq/BOJiudEe06vhbRsT QqYlwD89MHQ3w/PYs2UAXW152cagq86QEkiS9Yqif8opkvPljdzpD6NpdF8Dlmexp3Lu poQJvux/MvRORW7BCDekcsIaI/cnN7t5KQJBxd9k+wOtznjtBJSGjsv+Sk9QbNNjGy14 2SVRuQPd6uifSZqiPGAVB8f6eaO+RymOGwCFDLEYUGivMM3r28Ucq3cJ4tQ72vaIar06 Sjmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id; bh=BMe3xVQKSL82Mx0TpQvDl5KS2BidssXTpA+Wcv2L41w=; b=P8u9ZJM0LLW7bg50HP57NWw5S2bh1jylP5VMkcfu2GRR2etlVr8fG8f+3aby3m64AA m/2k2Du/QFQvaN/2fxbLMo2mYAghrcRvHoUZrJj/mQwnY2IgcBHOJ5zIkDNISmjLKdOR T5j4FrNWwYlut0rmVRg9z8xG3/zjXSONvntgTfuZOh8d48UOOqh/fqSYmlbTRG8bwG4X GqQmnYSDyhGeIV99nNZm7b/4DFZQU3fO4iOWCwVStPDFgprf7IhOtmYkucybOKZ27Ua/ 5w8B60aQXoSUZhNKd8aO6+5uOqdo97vKeEXGw7viGipFhIUABnoXD3dAfR6Q7wO5xN45 IDfw== X-Gm-Message-State: AKaTC01LZPZVw2Bi428oJyjOdCmzkhLTDfYpuGYFzZUAjC+9CWnLIGbNDuECgl8dQWaV7g== X-Received: by 10.28.6.203 with SMTP id 194mr5210258wmg.16.1479402991212; Thu, 17 Nov 2016 09:16:31 -0800 (PST) Received: from weierstrass.local.net ([91.200.110.70]) by smtp.gmail.com with ESMTPSA id f67sm16672684wmd.13.2016.11.17.09.16.30 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Nov 2016 09:16:30 -0800 (PST) From: Jan Blunck To: dev@dpdk.org Cc: ferruh.yigit@intel.com Date: Thu, 17 Nov 2016 18:16:11 +0100 Message-Id: <1479402972-27470-1-git-send-email-jblunck@infradead.org> X-Mailer: git-send-email 2.7.4 Subject: [dpdk-dev] [PATCH v2 1/2] Clear eth_dev->data in rte_eth_dev_allocate() X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Lets clear the eth_dev->data when allocating a new rte_eth_dev so that drivers only need to set non-zero values. Signed-off-by: Jan Blunck Reviewed-by: Ferruh Yigit --- drivers/net/bonding/rte_eth_bond_api.c | 7 ------- drivers/net/mlx4/mlx4.c | 1 - drivers/net/mlx5/mlx5.c | 1 - drivers/net/mpipe/mpipe_tilegx.c | 1 - lib/librte_ether/rte_ethdev.c | 2 +- 5 files changed, 1 insertion(+), 11 deletions(-) diff --git a/drivers/net/bonding/rte_eth_bond_api.c b/drivers/net/bonding/rte_eth_bond_api.c index 2a3893a..ed75c28 100644 --- a/drivers/net/bonding/rte_eth_bond_api.c +++ b/drivers/net/bonding/rte_eth_bond_api.c @@ -202,8 +202,6 @@ rte_eth_bond_create(const char *name, uint8_t mode, uint8_t socket_id) TAILQ_INIT(&(eth_dev->link_intr_cbs)); - eth_dev->data->dev_link.link_status = ETH_LINK_DOWN; - eth_dev->data->mac_addrs = rte_zmalloc_socket(name, ETHER_ADDR_LEN, 0, socket_id); if (eth_dev->data->mac_addrs == NULL) { @@ -211,11 +209,6 @@ rte_eth_bond_create(const char *name, uint8_t mode, uint8_t socket_id) goto err; } - eth_dev->data->dev_started = 0; - eth_dev->data->promiscuous = 0; - eth_dev->data->scattered_rx = 0; - eth_dev->data->all_multicast = 0; - eth_dev->dev_ops = &default_dev_ops; eth_dev->data->dev_flags = RTE_ETH_DEV_INTR_LSC | RTE_ETH_DEV_DETACHABLE; diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c index da61a85..9264242 100644 --- a/drivers/net/mlx4/mlx4.c +++ b/drivers/net/mlx4/mlx4.c @@ -5834,7 +5834,6 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) eth_dev->rx_pkt_burst = mlx4_rx_burst_secondary_setup; } else { eth_dev->data->dev_private = priv; - eth_dev->data->rx_mbuf_alloc_failed = 0; eth_dev->data->mtu = ETHER_MTU; eth_dev->data->mac_addrs = priv->mac; } diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c index 90cc35e..b57cad1 100644 --- a/drivers/net/mlx5/mlx5.c +++ b/drivers/net/mlx5/mlx5.c @@ -652,7 +652,6 @@ mlx5_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) eth_dev->rx_pkt_burst = mlx5_rx_burst_secondary_setup; } else { eth_dev->data->dev_private = priv; - eth_dev->data->rx_mbuf_alloc_failed = 0; eth_dev->data->mtu = ETHER_MTU; eth_dev->data->mac_addrs = priv->mac; } diff --git a/drivers/net/mpipe/mpipe_tilegx.c b/drivers/net/mpipe/mpipe_tilegx.c index fbbbb00..792ab56 100644 --- a/drivers/net/mpipe/mpipe_tilegx.c +++ b/drivers/net/mpipe/mpipe_tilegx.c @@ -1603,7 +1603,6 @@ rte_pmd_mpipe_probe(const char *ifname, eth_dev->data->dev_private = priv; eth_dev->data->mac_addrs = &priv->mac_addr; - eth_dev->data->dev_flags = 0; eth_dev->data->kdrv = RTE_KDRV_NONE; eth_dev->driver = NULL; eth_dev->data->drv_name = drivername; diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c index fde8112..12af4b1 100644 --- a/lib/librte_ether/rte_ethdev.c +++ b/lib/librte_ether/rte_ethdev.c @@ -212,6 +212,7 @@ rte_eth_dev_allocate(const char *name) eth_dev = &rte_eth_devices[port_id]; eth_dev->data = &rte_eth_dev_data[port_id]; + memset(eth_dev->data, 0, sizeof(*eth_dev->data)); snprintf(eth_dev->data->name, sizeof(eth_dev->data->name), "%s", name); eth_dev->data->port_id = port_id; eth_dev->attached = DEV_ATTACHED; @@ -259,7 +260,6 @@ rte_eth_dev_pci_probe(struct rte_pci_driver *pci_drv, } eth_dev->pci_dev = pci_dev; eth_dev->driver = eth_drv; - eth_dev->data->rx_mbuf_alloc_failed = 0; /* init user callbacks */ TAILQ_INIT(&(eth_dev->link_intr_cbs));