From mboxrd@z Thu Jan 1 00:00:00 1970 From: Igor Ryzhov Subject: Re: RTE Ring removing Date: Wed, 07 May 2014 11:54:23 +0400 Message-ID: <5369E6AF.4040402@arccn.ru> References: <5368A5E0.8090903@arccn.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable To: dev-VfR2kkLFssw@public.gmane.org Return-path: In-Reply-To: <5368A5E0.8090903-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" Hello again. I did some investigation on the code. I learned that RTE Ring creation function uses functions related to RTE=20 Memzone to reserve memory (rte_memzone_reserve). Documentation states that once reserved memzone can not be unreserved. I=20 decided to find out why it is so. I noticed that in Memzone realization there is a special global variable=20 "free_memseg" containing pointers on free memory segments. An memzone reserve function just finst the best segment for allocation=20 from this "free_memseg" variable. So I think there is a possibility to unreserve already reserved memory=20 back to "free_memseg", and impossibility of unreserving memory is just=20 because there is no function for that, not because it is impossible in=20 principle. Am I right? Or there are any restrictions? Best regards, Igor Ryzhov 06.05.2014 13:05, Igor Ryzhov =D0=BF=D0=B8=D1=88=D0=B5=D1=82: > Hello. > > For what reason RTE Rings can not be removed once created? > In my application I want to use many rings with different names so I=20 > think there may be a problem with memory because of many ring that=20 > already not in use, but allocated. > Or DPDK has a mechanism of reusing memory if rings are not in use? > > Best regards, > Igor Ryzhov