DPDK patches and discussions
 help / color / mirror / Atom feed
From: Meir Tseitlin <mirots@gmail.com>
To: dev@dpdk.org, Olivier MATZ <olivier.matz@6wind.com>
Subject: [dpdk-dev] Weird behavior of DPDK - ongoing problem
Date: Sun, 13 Apr 2014 13:21:20 +0300	[thread overview]
Message-ID: <CA+Typ9mstsAQEHaYCAa39gKY9EHObkzeTXcav_5s9Gr5xNY7xg@mail.gmail.com> (raw)

Hi guys,

I am still struggling to find a solution for a problem each time I face
from different angle (already wrote few posts). Now I think it is some kind
of DMA problem.

I am modifying l2fwd example to collect packet flow from high speed
ethernet device and store it in file, this is why I use pcap driver
attached to file as a one side of l2fwd.
In addition I need to send control packets to the device and receive
answers.

Initially I implemented packet injection mechanism using rte_pktmbuf_alloc
(I tried both original mempool or additional one). I checked receive
packets for specific packet type it header, to detect if it is data packet
or an answer to control packet (answers to control packets are  not
forwarded to file).

The problem is that in 30% of the cases data packet enters the path of
control packet instead of expected answer. Which probably means that after
my packet type check, the mbuf is overwritten before handled properly.

To overcome this problem I created a TAP device for control packets
(instead of allocating them with rte_pktmbuf_alloc) and initialized it with
Pcap driver. But I am facing the same problem - on the receive side, when
control answer packet arrives is it skipped and another data packet sent to
TAP device.

It seems like mbuf containing control packet, intended to be sent to TAP
device is overwritten with data packet after the routing mechanism (maybe
with DMA?)

I also tried enabling sanity check before calling to rte_eth_tx_burst and
it fails.

Please help,
It is really frustrating

Meir

             reply	other threads:[~2014-04-13 10:19 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-13 10:21 Meir Tseitlin [this message]
2014-04-14  7:20 ` Tetsuya.Mukawa
2014-04-14  7:46   ` Meir Tseitlin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+Typ9mstsAQEHaYCAa39gKY9EHObkzeTXcav_5s9Gr5xNY7xg@mail.gmail.com \
    --to=mirots@gmail.com \
    --cc=dev@dpdk.org \
    --cc=olivier.matz@6wind.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).