[dpdk-users] MBUF messed up between EAL and NON EAL threads
Neeraj Tandon (netandon)
netandon at cisco.com
Wed May 31 05:28:50 CEST 2017
Hi,
I am seeing an MBUF issue between two threads communicating using a Ring of MBUFs. I would appreciate if someone can tell if this is correct method to accomplish this:
1. Master Core creates MBUF pool and a ring.
2. An EAL Transmit thread polls this Ring
3. A NON EAL threads allocates a MBUF from this pool and queues in the ring
4. EAL Transmit thread deques and transmits the MBUF
Here is the issue I am seeing:
In NON EAL Thread where MBUF is allocated, the mbuf dump shows :
dump mbuf at 0x7f3b9339aa80, phys=11339ab00, buf_len=2176
pkt_len=34, ol_flags=f0000000000000, nb_segs=1, in_port=1
segment at 0x7f3b9339aa80, data=0x7f3b9339ab80, data_len=34
In Transmit thread on dequeuing;
dump mbuf at 0x7f3b9339ab00, phys=0, buf_len=0
pkt_len=0, ol_flags=0, nb_segs=0, in_port=0
So mbuf address is messed up and none of the other values are good. Any idea, suggestion most welcome. Should I be only using EAL thread to send to Ring but that is highly limiting in design
Regards,
Neeraj
More information about the users
mailing list