From mboxrd@z Thu Jan 1 00:00:00 1970 From: Olivier MATZ Subject: Re: RTE Ring removing Date: Wed, 07 May 2014 13:39:08 +0200 Message-ID: <536A1B5C.2010201@6wind.com> References: <5368A5E0.8090903@arccn.ru> <5369E6AF.4040402@arccn.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit To: Igor Ryzhov , dev-VfR2kkLFssw@public.gmane.org Return-path: In-Reply-To: <5369E6AF.4040402-p3dJzl6UAic@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" 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