[dpdk-dev] Memory allocated using rte_zmalloc() has non-zeros

Andrew Rybchenko arybchenko at solarflare.com
Wed Jul 18 17:20:26 CEST 2018


Hi Anatoly,

I'm investigating issue which finally comes to the fact that memory 
allocated using
rte_zmalloc() has non zeros.

If I add memset just after allocation, everything is perfect and works fine.

I've found out that memset was removed from rte_zmalloc_socket() some 
time ago:

 >>>
commit b78c9175118f7d61022ddc5c62ce54a1bd73cea5
Author: Sergio Gonzalez Monroy <sergio.gonzalez.monroy at intel.com>
Date:   Tue Jul 5 12:01:16 2016 +0100

     mem: do not zero out memory on zmalloc

     Zeroing out memory on rte_zmalloc_socket is not required anymore 
since all
     allocated memory is already zeroed.

     Signed-off-by: Sergio Gonzalez Monroy 
<sergio.gonzalez.monroy at intel.com>
<<<

but may be something has changed now that made above statement false.

I observe the problem when memory is reallocated. I.e. I configure 7 queues,
start, stop, reconfigure to 3 queues, start. Memory is allocated on 
start and
freed on stop, since we have less queues on the second start it is allocated
in a different way and reuses previously allocated/freed memory.

Do you have any ideas what could be wrong?

Andrew.



More information about the dev mailing list