Thread (6 messages) 6 messages, 2 authors, 2016-08-25

Re: dpdk 16.07, issues with rte_mempool_create and rte_kni_alloc()

From: Gopakumar Choorakkot Edakkunni <hidden>
Date: 2016-08-25 14:19:06

Thank you Ferruh, I will give this a spin over the weekend and let you know.

Rgds,
Gopa.

On Thu, Aug 25, 2016 at 6:51 AM, Ferruh Yigit [off-list ref]
wrote:
On 8/10/2016 11:51 AM, Ferruh Yigit wrote:
quoted
Hi Gopakumar,

On 8/4/2016 5:14 PM, Ferruh Yigit wrote:
quoted
On 8/1/2016 10:19 PM, Gopakumar Choorakkot Edakkunni wrote:
quoted
Well, for my purpose I just ended up creating a seperate/smaller pool
earlier during bootup to try to guarantee its from one memseg.

But I am assuming that this KNI restriction is something thats
"currently"
quoted
quoted
quoted
not fixed and is "fixable" ?
quoted
Any ideas on what the summary of the reason
for this restriction is - I was gonna check if I can fix that
KNI expects all mbufs are from a physically continuous memory. This is
because of current address translation implementation.

mbufs allocated in userspace and accessed from both user and kernel
space, so mbuf userspace virtual address needs to be converted into
kernelspace virtual address.

Currently this address translation done by first calculating an offset
between virtual addresses using first filed of mempool, later applying
same offset to all mbufs. This is why all mbufs should be in physically
continuous memory.

I think this address translation can be done in different way which can
remove the restriction, but not sure about the effect of the
performance. I will send a patch for this.
I have sent a patch to remove KNI restriction:
http://dpdk.org/dev/patchwork/patch/15171/

Can you please test this patch with a mempool with multiple memzone?
You need to remove following check in KNI manually:
    if (mp->nb_mem_chunks != 1)
        goto kni_fail;
Hi Gopakumar,

Off the list.

Any chance to test this?

Thanks,
ferruh
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help