From patchwork Fri Sep 1 08:06:44 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adrien Mazarguil X-Patchwork-Id: 28230 X-Patchwork-Delegate: ferruh.yigit@amd.com 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 8CC589953; Fri, 1 Sep 2017 10:08:03 +0200 (CEST) Received: from mail-wm0-f45.google.com (mail-wm0-f45.google.com [74.125.82.45]) by dpdk.org (Postfix) with ESMTP id BA80E9951 for ; Fri, 1 Sep 2017 10:08:00 +0200 (CEST) Received: by mail-wm0-f45.google.com with SMTP id r202so3481656wmd.0 for ; Fri, 01 Sep 2017 01:08:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind-com.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:in-reply-to:references; bh=DFQJxoIFvOKZwT3UK1IuSgqvL5JpI0iozzyxrWReT8w=; b=L6ncq4HEd97gWW3zpL6EC8DYVNfwNlC/ztP53AJlgzdouU8DreyoYSvvFXy2KVJpVg MCbdvw7Fn3zU1jzTZ7GiOWtYAMHvgyMn+2Fh7RtfmkVH0TnQxRuJxrmt6nZXfYcICQxG vhmfPVyWi5H01p1WsepGnG7hEL7D7BO9elxkpug7/6WTpjO9og3+9SHQvEScnRs1Abg3 Ok6CiJ1rdD++BTVwrk2Y9RGMdc8KW1PC9wNWd5fQC1vihEbzpumdqZaVDYlsMaQ9awb3 PA4ndICSX874LgQ5VRuaPY2FhnM7e+eECHdDH0nemxcobSDRR6H2Q1U29n0ssk3s+eDD breQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=DFQJxoIFvOKZwT3UK1IuSgqvL5JpI0iozzyxrWReT8w=; b=bdSUrVzdrLnVcuxfmriB7l7cziiYb6CDp1bxIhQpazaKgx1JyonXaZ90x8+lAJYDGp XM+CFLBPu3E0cdQHbIZv2sxD/w9U6RYY9hMOno9fySVXVlgPyqMUis7yqIM83RfreMOl F/4o16waVv8mR677IyQKanfH0Ipphe4GdZhyIwgcwzCGyfGqQqevwjOhdX64Ix7FQbQq JoriOTHq/s/Ac4GsDb29ypaFUFdPhY+mrrOQiDvk98ndrlrO4zmbSigSyDo18zX00El5 /Kb/AT6CyMJc+w+wU83n76w1MnC71Fp0eCSBiJCynDDU5UzOx/S9RAf37wvpjyRVuUwH cRow== X-Gm-Message-State: AHPjjUiea5mjEC4ZfPdfmVLQuxqMp91xsP0gQPtWkA5VJAPv6kd0mslG vhgPUu99paznlwG66Lk= X-Google-Smtp-Source: ADKCNb61V7akfd0wWE0ltZQbulRcTCa+8J8YOOj4PaStpA3fkPUKvUTNjzI28zPfMSaOKr5YGDJMCA== X-Received: by 10.28.130.129 with SMTP id e123mr504399wmd.26.1504253279592; Fri, 01 Sep 2017 01:07:59 -0700 (PDT) Received: from 6wind.com (host.78.145.23.62.rev.coltfrance.com. [62.23.145.78]) by smtp.gmail.com with ESMTPSA id p23sm1813564wma.28.2017.09.01.01.07.58 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 01 Sep 2017 01:07:58 -0700 (PDT) From: Adrien Mazarguil To: dev@dpdk.org Date: Fri, 1 Sep 2017 10:06:44 +0200 Message-Id: X-Mailer: git-send-email 2.1.4 In-Reply-To: References: Subject: [dpdk-dev] [PATCH v2 29/51] net/mlx4: clean up coding style inconsistencies X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This addresses badly formatted comments and needless empty lines before refactoring functions into different files. Signed-off-by: Adrien Mazarguil --- drivers/net/mlx4/mlx4.c | 77 ++++++++++++++------------------------- drivers/net/mlx4/mlx4_flow.c | 1 - 2 files changed, 28 insertions(+), 50 deletions(-) diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c index fbb3d73..80b0e3b 100644 --- a/drivers/net/mlx4/mlx4.c +++ b/drivers/net/mlx4/mlx4.c @@ -608,8 +608,10 @@ txq_alloc_elts(struct txq *txq, unsigned int elts_n) txq->elts_head = 0; txq->elts_tail = 0; txq->elts_comp = 0; - /* Request send completion every MLX4_PMD_TX_PER_COMP_REQ packets or - * at least 4 times per ring. */ + /* + * Request send completion every MLX4_PMD_TX_PER_COMP_REQ packets or + * at least 4 times per ring. + */ txq->elts_comp_cd_init = ((MLX4_PMD_TX_PER_COMP_REQ < (elts_n / 4)) ? MLX4_PMD_TX_PER_COMP_REQ : (elts_n / 4)); @@ -618,7 +620,6 @@ txq_alloc_elts(struct txq *txq, unsigned int elts_n) return 0; error: rte_free(elts); - DEBUG("%p: failed, freed everything", (void *)txq); assert(ret > 0); rte_errno = ret; @@ -664,7 +665,6 @@ txq_free_elts(struct txq *txq) rte_free(elts); } - /** * Clean up a TX queue. * @@ -755,7 +755,6 @@ static void mlx4_check_mempool_cb(struct rte_mempool *mp, (void)mp; (void)mem_idx; - /* It already failed, skip the next chunks. */ if (data->ret != 0) return; @@ -799,7 +798,6 @@ static int mlx4_check_mempool(struct rte_mempool *mp, uintptr_t *start, rte_mempool_mem_iter(mp, mlx4_check_mempool_cb, &data); *start = (uintptr_t)data.start; *end = (uintptr_t)data.end; - return data.ret; } @@ -833,7 +831,6 @@ mlx4_mp2mr(struct ibv_pd *pd, struct rte_mempool *mp) (void *)mp); return NULL; } - DEBUG("mempool %p area start=%p end=%p size=%zu", (void *)mp, (void *)start, (void *)end, (size_t)(end - start)); @@ -960,8 +957,10 @@ txq_mp2mr_mbuf_check(struct rte_mempool *mp, void *arg, void *obj, struct txq_mp2mr_mbuf_check_data *data = arg; struct rte_mbuf *buf = obj; - /* Check whether mbuf structure fits element size and whether mempool - * pointer is valid. */ + /* + * Check whether mbuf structure fits element size and whether mempool + * pointer is valid. + */ if (sizeof(*buf) > mp->elt_size || buf->pool != mp) data->ret = -1; } @@ -1224,8 +1223,10 @@ txq_setup(struct rte_eth_dev *dev, struct txq *txq, uint16_t desc, .max_inline_data = MLX4_PMD_MAX_INLINE, }, .qp_type = IBV_QPT_RAW_PACKET, - /* Do *NOT* enable this, completions events are managed per - * TX burst. */ + /* + * Do *NOT* enable this, completions events are managed per + * Tx burst. + */ .sq_sig_all = 0, }; tmpl.qp = ibv_create_qp(priv->pd, &attr.init); @@ -1698,12 +1699,10 @@ mlx4_rx_burst(void *dpdk_rxq, struct rte_mbuf **pkts, uint16_t pkts_n) ++rxq->priv->dev->data->rx_mbuf_alloc_failed; goto repost; } - /* Reconfigure sge to use rep instead of seg. */ elt->sge.addr = (uintptr_t)rep->buf_addr + RTE_PKTMBUF_HEADROOM; assert(elt->sge.lkey == rxq->mr->lkey); elt->buf = rep; - /* Update seg information. */ SET_DATA_OFF(seg, RTE_PKTMBUF_HEADROOM); NB_SEGS(seg) = 1; @@ -1713,7 +1712,6 @@ mlx4_rx_burst(void *dpdk_rxq, struct rte_mbuf **pkts, uint16_t pkts_n) DATA_LEN(seg) = len; seg->packet_type = 0; seg->ol_flags = 0; - /* Return packet. */ *(pkts++) = seg; ++pkts_ret; @@ -2215,9 +2213,11 @@ mlx4_dev_close(struct rte_eth_dev *dev) (void *)dev, ((priv->ctx != NULL) ? priv->ctx->device->name : "")); priv_mac_addr_del(priv); - /* Prevent crashes when queues are still in use. This is unfortunately + /* + * Prevent crashes when queues are still in use. This is unfortunately * still required for DPDK 1.3 because some programs (such as testpmd) - * never release them before closing the device. */ + * never release them before closing the device. + */ dev->rx_pkt_burst = removed_rx_burst; dev->tx_pkt_burst = removed_tx_burst; if (priv->rxqs != NULL) { @@ -2334,6 +2334,7 @@ mlx4_set_link_up(struct rte_eth_dev *dev) priv_unlock(priv); return err; } + /** * DPDK callback to get information about the device. * @@ -2350,7 +2351,6 @@ mlx4_dev_infos_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *info) char ifname[IF_NAMESIZE]; info->pci_dev = RTE_ETH_DEV_TO_PCI(dev); - if (priv == NULL) return; priv_lock(priv); @@ -2495,7 +2495,6 @@ mlx4_link_update(struct rte_eth_dev *dev, int wait_to_complete) int link_speed = 0; /* priv_lock() is not taken to allow concurrent calls. */ - if (priv == NULL) { rte_errno = EINVAL; return -rte_errno; @@ -2590,7 +2589,6 @@ mlx4_dev_get_flow_ctrl(struct rte_eth_dev *dev, struct rte_eth_fc_conf *fc_conf) strerror(rte_errno)); goto out; } - fc_conf->autoneg = ethpause.autoneg; if (ethpause.rx_pause && ethpause.tx_pause) fc_conf->mode = RTE_FC_FULL; @@ -2601,7 +2599,6 @@ mlx4_dev_get_flow_ctrl(struct rte_eth_dev *dev, struct rte_eth_fc_conf *fc_conf) else fc_conf->mode = RTE_FC_NONE; ret = 0; - out: priv_unlock(priv); assert(ret >= 0); @@ -2636,13 +2633,11 @@ mlx4_dev_set_flow_ctrl(struct rte_eth_dev *dev, struct rte_eth_fc_conf *fc_conf) ethpause.rx_pause = 1; else ethpause.rx_pause = 0; - if (((fc_conf->mode & RTE_FC_FULL) == RTE_FC_FULL) || (fc_conf->mode & RTE_FC_TX_PAUSE)) ethpause.tx_pause = 1; else ethpause.tx_pause = 0; - priv_lock(priv); if (priv_ifreq(priv, SIOCETHTOOL, &ifr)) { ret = rte_errno; @@ -2652,7 +2647,6 @@ mlx4_dev_set_flow_ctrl(struct rte_eth_dev *dev, struct rte_eth_fc_conf *fc_conf) goto out; } ret = 0; - out: priv_unlock(priv); assert(ret >= 0); @@ -2886,8 +2880,8 @@ mlx4_dev_link_status_handler(void *arg) ret = priv_dev_status_handler(priv, dev, &events); priv_unlock(priv); if (ret > 0 && events & (1 << RTE_ETH_EVENT_INTR_LSC)) - _rte_eth_dev_callback_process(dev, RTE_ETH_EVENT_INTR_LSC, NULL, - NULL); + _rte_eth_dev_callback_process(dev, RTE_ETH_EVENT_INTR_LSC, + NULL, NULL); } /** @@ -2934,6 +2928,7 @@ mlx4_dev_interrupt_handler(void *cb_arg) * Pointer to private structure. * @param dev * Pointer to the rte_eth_dev structure. + * * @return * 0 on success, negative errno value otherwise and rte_errno is set. */ @@ -2965,6 +2960,7 @@ priv_dev_interrupt_handler_uninstall(struct priv *priv, struct rte_eth_dev *dev) * Pointer to private structure. * @param dev * Pointer to the rte_eth_dev structure. + * * @return * 0 on success, negative errno value otherwise and rte_errno is set. */ @@ -2975,8 +2971,9 @@ priv_dev_interrupt_handler_install(struct priv *priv, int flags; int rc; - /* Check whether the interrupt handler has already been installed - * for either type of interrupt + /* + * Check whether the interrupt handler has already been installed + * for either type of interrupt. */ if (priv->intr_conf.lsc && priv->intr_conf.rmv && @@ -3014,6 +3011,7 @@ priv_dev_interrupt_handler_install(struct priv *priv, * Pointer to private structure. * @param dev * Pointer to the rte_eth_dev structure. + * * @return * 0 on success, negative errno value otherwise and rte_errno is set. */ @@ -3035,6 +3033,7 @@ priv_dev_removal_interrupt_handler_uninstall(struct priv *priv, * Pointer to private structure. * @param dev * Pointer to the rte_eth_dev structure. + * * @return * 0 on success, negative errno value otherwise and rte_errno is set. */ @@ -3068,6 +3067,7 @@ priv_dev_link_interrupt_handler_uninstall(struct priv *priv, * Pointer to private structure. * @param dev * Pointer to the rte_eth_dev structure. + * * @return * 0 on success, negative errno value otherwise and rte_errno is set. */ @@ -3093,6 +3093,7 @@ priv_dev_link_interrupt_handler_install(struct priv *priv, * Pointer to private structure. * @param dev * Pointer to the rte_eth_dev structure. + * * @return * 0 on success, negative errno value otherwise and rte_errno is set. */ @@ -3390,7 +3391,6 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) (void)pci_drv; assert(pci_drv == &mlx4_driver); - list = ibv_get_device_list(&i); if (list == NULL) { rte_errno = errno; @@ -3441,14 +3441,12 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) return -rte_errno; } ibv_dev = list[i]; - DEBUG("device opened"); if (ibv_query_device(attr_ctx, &device_attr)) { rte_errno = ENODEV; goto error; } INFO("%u port(s) detected", device_attr.phys_port_cnt); - conf.ports.present |= (UINT64_C(1) << device_attr.phys_port_cnt) - 1; if (mlx4_args(pci_dev->device.devargs, &conf)) { ERROR("failed to process device arguments"); @@ -3470,15 +3468,12 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) /* If port is not enabled, skip. */ if (!(conf.ports.enabled & (1 << i))) continue; - DEBUG("using port %u", port); - ctx = ibv_open_device(ibv_dev); if (ctx == NULL) { rte_errno = ENODEV; goto port_error; } - /* Check port status. */ err = ibv_query_port(ctx, port, &port_attr); if (err) { @@ -3486,19 +3481,16 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) ERROR("port query failed: %s", strerror(rte_errno)); goto port_error; } - if (port_attr.link_layer != IBV_LINK_LAYER_ETHERNET) { rte_errno = ENOTSUP; ERROR("port %d is not configured in Ethernet mode", port); goto port_error; } - if (port_attr.state != IBV_PORT_ACTIVE) DEBUG("port %d is not active: \"%s\" (%d)", port, ibv_port_state_str(port_attr.state), port_attr.state); - /* Allocate protection domain. */ pd = ibv_alloc_pd(ctx); if (pd == NULL) { @@ -3506,7 +3498,6 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) ERROR("PD allocation failure"); goto port_error; } - /* from rte_ethdev.c */ priv = rte_zmalloc("ethdev private structure", sizeof(*priv), @@ -3516,13 +3507,11 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) ERROR("priv allocation failure"); goto port_error; } - priv->ctx = ctx; priv->device_attr = device_attr; priv->port = port; priv->pd = pd; priv->mtu = ETHER_MTU; - priv->vf = vf; /* Configure the first MAC address by default. */ if (priv_get_mac(priv, &mac.addr_bytes)) { @@ -3553,7 +3542,6 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) /* Get actual MTU if possible. */ priv_get_mtu(priv, &priv->mtu); DEBUG("port %u MTU is %u", priv->port, priv->mtu); - /* from rte_ethdev.c */ { char name[RTE_ETH_NAME_MAX_LEN]; @@ -3567,15 +3555,11 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) rte_errno = ENOMEM; goto port_error; } - eth_dev->data->dev_private = priv; eth_dev->data->mac_addrs = &priv->mac; eth_dev->device = &pci_dev->device; - rte_eth_copy_pci_info(eth_dev, pci_dev); - eth_dev->device->driver = &mlx4_driver.driver; - /* * Copy and override interrupt handle to prevent it from * being shared between all ethdev instances of a given PCI @@ -3584,11 +3568,9 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) */ priv->intr_handle_dev = *eth_dev->intr_handle; eth_dev->intr_handle = &priv->intr_handle_dev; - priv->dev = eth_dev; eth_dev->dev_ops = &mlx4_dev_ops; eth_dev->data->dev_flags |= RTE_ETH_DEV_DETACHABLE; - /* Bring Ethernet device up. */ DEBUG("forcing Ethernet interface up"); priv_set_flags(priv, ~IFF_UP, IFF_UP); @@ -3596,7 +3578,6 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) if (eth_dev->data->dev_flags & RTE_ETH_DEV_INTR_LSC) mlx4_link_update(eth_dev, 0); continue; - port_error: rte_free(priv); if (pd) @@ -3609,14 +3590,12 @@ mlx4_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) } if (i == device_attr.phys_port_cnt) return 0; - /* * XXX if something went wrong in the loop above, there is a resource * leak (ctx, pd, priv, dpdk ethdev) but we can do nothing about it as * long as the dpdk does not provide a way to deallocate a ethdev and a * way to enumerate the registered ethdevs to free the previous ones. */ - error: if (attr_ctx) claim_zero(ibv_close_device(attr_ctx)); diff --git a/drivers/net/mlx4/mlx4_flow.c b/drivers/net/mlx4/mlx4_flow.c index 58d4698..7dcb059 100644 --- a/drivers/net/mlx4/mlx4_flow.c +++ b/drivers/net/mlx4/mlx4_flow.c @@ -835,7 +835,6 @@ priv_flow_create_action_queue(struct priv *priv, goto error; } return rte_flow; - error: rte_free(rte_flow); return NULL;