[dpdk-dev] [PATCH 1/2] net/mlx5: fix alignment of Memory Region

Yongseok Koh yskoh at mellanox.com
Tue Apr 17 20:39:13 CEST 2018


The memory region is [start, end), so if the memseg of 'end' isn't
allocated yet, the returned memseg will have zero entries and this will
make 'end' zero (nil).

Fixes: 718e35999c96 ("net/mlx5: use virt2memseg instead of iteration")
Cc: Anatoly Burakov <anatoly.burakov at intel.com>

Signed-off-by: Yongseok Koh <yskoh at mellanox.com>
---
 drivers/net/mlx5/mlx5_mr.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_mr.c b/drivers/net/mlx5/mlx5_mr.c
index fdf7b3e88..39bbe2481 100644
--- a/drivers/net/mlx5/mlx5_mr.c
+++ b/drivers/net/mlx5/mlx5_mr.c
@@ -265,9 +265,7 @@ mlx5_mr_new(struct rte_eth_dev *dev, struct rte_mempool *mp)
 	ms = rte_mem_virt2memseg((void *)start, NULL);
 	if (ms != NULL)
 		start = RTE_ALIGN_FLOOR(start, ms->hugepage_sz);
-	ms = rte_mem_virt2memseg((void *)end, NULL);
-	if (ms != NULL)
-		end = RTE_ALIGN_CEIL(end, ms->hugepage_sz);
+	end = RTE_ALIGN_CEIL(end, ms->hugepage_sz);
 
 	DRV_LOG(DEBUG,
 		"port %u mempool %p using start=%p end=%p size=%zu for memory"
-- 
2.11.0



More information about the dev mailing list