All of lore.kernel.org
 help / color / mirror / Atom feed
* KNI Out of memory
@ 2014-08-27  8:40 Ivano Cerrato
  0 siblings, 0 replies; only message in thread
From: Ivano Cerrato @ 2014-08-27  8:40 UTC (permalink / raw)
  To: dev-VfR2kkLFssw@public.gmane.org

Hello,
I wrote a code that creates some KNI interfaces, destroys them when some 
management events occur, and creates new interfaces when other 
management events happen.
What happens is that I create a number of interfaces using "kni_alloc", 
I destroy ALL of them through "kni_release" and, when I try to create a 
new one I get the message "KNI out of memory" during the execution of 
the "kni_alloc".

The number of interfaces that I can create/destroy before getting the 
error depends on the size of the mempool that I specify during the 
creation of the interfaces themselves.
Then, to me it seems that the memory is not properly released when a KNI 
interface is destroyed. Before invoking "kni_release", I drain all the 
remaining mbufs in the tx queues. While checking the sources of DPDK, I 
have seen that indeed this trace only appears when there there are no 
mbufs available in the mempool.

Am I missing something here?  Is there any other call necessary to 
properly release a KNI interface?

Just before/after the creation and release of an interface, I print the 
values obtained by invoking "rte_mempool_count" and 
"rte_mempool_free_count" on the mempool used for the KNI. What I get is 
the following: the value obtained with "rte_mempool_count" tends to 
decrease, while the value get with "rte_mempool_free_count" tends to 
increase.

What is the exact semantic of "rte_mempool_count" and 
"rte_mempool_free_count"? From the doxygen documentation, it seems that 
the behaviour should be the opposite.

Best regards,

  Ivano

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2014-08-27  8:40 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-27  8:40 KNI Out of memory Ivano Cerrato

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.