DPDK patches and discussions
 help / color / mirror / Atom feed
From: Alexey Bogdanenko <abogdanenko@ecotelecom.ru>
To: dev@dpdk.org
Subject: [dpdk-dev] Unable to configure ethdev in secondary process using ring PMD
Date: Mon, 30 Nov 2015 19:17:08 +0300	[thread overview]
Message-ID: <565C7684.2090901@ecotelecom.ru> (raw)

Hello,

I would like to setup communication between two existing DPDK 
applications and run them on the same host.

"Connecting their ports" in some way in order not to rewrite the 
applications would be very desirable. Specifically, I would like one 
process to send packets and the second process to receive the packets 
using rte_eth_tx_burst() and rte_eth_rx_burst() respectively.

The most straightforward way to accomplish this seems to be by using 
ring based PMD API as described in the documentation [1] and email [2]. 
To adapt the example from the documentation to multi-process scenario, I 
call rte_ring_create() and rte_eth_from_rings() in the primary process, 
rte_ring_lookup() and rte_eth_from_rings() in the secondary process. 
After that each process calls rte_eth_dev_configure().

Unfortunately, the function returns -1001 in the secondary process, 
which is explained in debug log:

PMD: rte_eth_dev_configure: Cannot run in secondary processes

Is it possible to connect the applications as described above? Any 
advice would be appreciated.

References:

1. Network Interface Controller Drivers. Chapter 8.
Libpcap and Ring Based Poll Mode Drivers.

2. DPDK ML. Fri Dec 6 07:22:06 CET 2013. How to know corresponding 
device from port number. Tetsuya.Mukawa

Thanks,

Alexey Bogdanenko

             reply	other threads:[~2015-11-30 16:17 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-30 16:17 Alexey Bogdanenko [this message]
2015-11-30 16:53 ` Richardson, Bruce
2015-12-01 17:30   ` Alexey Bogdanenko
2015-12-01 17:45     ` Bruce Richardson

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=565C7684.2090901@ecotelecom.ru \
    --to=abogdanenko@ecotelecom.ru \
    --cc=dev@dpdk.org \
    /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).