On Tue, Apr 17, 2018 at 11:39:14AM -0700, Yongseok Koh wrote: > 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: c2fe5823224a ("net/mlx4: use virt2memseg instead of iteration") > Cc: Anatoly Burakov <anatoly.bura...@intel.com> > > Signed-off-by: Yongseok Koh <ys...@mellanox.com>
Acked-by: Adrien Mazarguil <adrien.mazarg...@6wind.com> One nit in case another version is sent, please remove the unnecessary empty line in both patches, thanks. > --- > drivers/net/mlx4/mlx4_mr.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/drivers/net/mlx4/mlx4_mr.c b/drivers/net/mlx4/mlx4_mr.c > index e69b43322..f2dcbcb76 100644 > --- a/drivers/net/mlx4/mlx4_mr.c > +++ b/drivers/net/mlx4/mlx4_mr.c > @@ -144,9 +144,7 @@ mlx4_mr_get(struct priv *priv, 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); > > DEBUG("mempool %p using start=%p end=%p size=%zu for MR", > (void *)mp, (void *)start, (void *)end, > -- > 2.11.0 > -- Adrien Mazarguil 6WIND