[dpdk-dev] RTE Ring removing

Olivier MATZ olivier.matz at 6wind.com
Wed May 7 13:39:08 CEST 2014


Hi Igor,

On 05/07/2014 09:54 AM, Igor Ryzhov wrote:
> I noticed that in Memzone realization there is a special global variable
> "free_memseg" containing pointers on free memory segments.
> An memzone reserve function just finst the best segment for allocation
> from this "free_memseg" variable.
>
> So I think there is a possibility to unreserve already reserved memory
> back to "free_memseg", and impossibility of unreserving memory is just
> because there is no function for that, not because it is impossible in
> principle.
> Am I right? Or there are any restrictions?

I think that implementing a freeing of memory segment is feasible, but
it would require some work to properly merge freed zones to avoid memory
fragmentation.

Another solution is to allocate/free rings in standard memory (malloc
for instance) instead of rte_memzones. Let me know if the patches I've
just sent on the mailing list solves your issue.

By the way, I plan to do the same thing for mempools in the coming
weeks but there is much more work.

Regards,
Olivier



More information about the dev mailing list