From: Yongseok Koh Date: Mon, 8 Apr 2019 18:23:13 +0000 (-0700) Subject: net/mlx4: fix Tx doorbell register unmap X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=b27669d691b15042333d472e2edc883046cd8c89;p=dpdk.git net/mlx4: fix Tx doorbell register unmap If rdma-core library doesn't support remapping UAR registers, the register shouldn't be unmapped on device stop. Fixes: 0203d33a1059 ("net/mlx4: support secondary process") Signed-off-by: Yongseok Koh Acked-by: Shahaf Shuler --- diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c index 252658fc6a..9bca0ce9cd 100644 --- a/drivers/net/mlx4/mlx4.c +++ b/drivers/net/mlx4/mlx4.c @@ -314,8 +314,10 @@ static void mlx4_dev_stop(struct rte_eth_dev *dev) { struct mlx4_priv *priv = dev->data->dev_private; +#ifdef HAVE_IBV_MLX4_UAR_MMAP_OFFSET const size_t page_size = sysconf(_SC_PAGESIZE); int i; +#endif if (!priv->started) return; @@ -329,6 +331,7 @@ mlx4_dev_stop(struct rte_eth_dev *dev) mlx4_flow_sync(priv, NULL); mlx4_rxq_intr_disable(priv); mlx4_rss_deinit(priv); +#ifdef HAVE_IBV_MLX4_UAR_MMAP_OFFSET for (i = 0; i != dev->data->nb_tx_queues; ++i) { struct txq *txq; @@ -338,6 +341,7 @@ mlx4_dev_stop(struct rte_eth_dev *dev) munmap((void *)RTE_ALIGN_FLOOR((uintptr_t)txq->msq.db, page_size), page_size); } +#endif } /**