> -----Original Message----- > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Anatoly Burakov > Sent: Thursday, May 3, 2018 5:01 PM > To: dev@dpdk.org > Cc: sta...@dpdk.org > Subject: [dpdk-dev] [PATCH] memzone: fix memzone size on reserving biggest > memzone > > Size of malloc heap elements include overhead, which sould not > be counted as part of memzone. > > Fixes: fafcc11985a2 ("mem: rework memzone to be allocated by malloc") > Cc: sta...@dpdk.org > > Signed-off-by: Anatoly Burakov <anatoly.bura...@intel.com> > ---
Acked-by: Konstantin Ananyev <konstantin.anan...@intel.com> > lib/librte_eal/common/eal_common_memzone.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/lib/librte_eal/common/eal_common_memzone.c > b/lib/librte_eal/common/eal_common_memzone.c > index bce3321..0595b3a 100644 > --- a/lib/librte_eal/common/eal_common_memzone.c > +++ b/lib/librte_eal/common/eal_common_memzone.c > @@ -213,7 +213,8 @@ memzone_reserve_aligned_thread_unsafe(const char *name, > size_t len, > snprintf(mz->name, sizeof(mz->name), "%s", name); > mz->iova = rte_malloc_virt2iova(mz_addr); > mz->addr = mz_addr; > - mz->len = (requested_len == 0 ? elem->size : requested_len); > + mz->len = (requested_len == 0 ? > + (elem->size - MALLOC_ELEM_OVERHEAD) : requested_len); > mz->hugepage_sz = elem->msl->page_sz; > mz->socket_id = elem->msl->socket_id; > mz->flags = 0; > -- > 2.7.4