DPDK patches and discussions
 help / color / mirror / Atom feed
From: Bruce Richardson <bruce.richardson@intel.com>
To: Alexey Bogdanenko <abogdanenko@ecotelecom.ru>
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] Unable to configure ethdev in secondary process using ring PMD
Date: Tue, 1 Dec 2015 17:45:34 +0000	[thread overview]
Message-ID: <20151201174534.GA34256@bricha3-MOBL3> (raw)
In-Reply-To: <565DD927.6030403@ecotelecom.ru>

On Tue, Dec 01, 2015 at 08:30:15PM +0300, Alexey Bogdanenko wrote:
> On 11/30/2015 07:53 PM, Richardson, Bruce wrote:
> >
> >
> >>-----Original Message-----
> >>From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Alexey Bogdanenko
> >>Sent: Monday, November 30, 2015 4:17 PM
> >>To: dev@dpdk.org
> >>Subject: [dpdk-dev] Unable to configure ethdev in secondary process using
> >>ring PMD
> >>
> >>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
> >
> >Hi Alexey,
> >
> >The ring PMDs returned from eth_from_rings should be all ready to be used without having to explicitly configure it or set up the queues.
> >
> >/Bruce
> >
> 
> Thanks for the quick reply,
> 
> I updated dpdk from v2.1.0 to a more recent version (near v2.2.0-rc2),
> removed calls to rte_eth_dev_configure(), rte_eth_rx_queue_setup(). It
> solved the problem.
> 
> Your advice was very helpful.
> 
> However, I encountered a rather minor but similar issue, which is that
> rte_eth_dev_start() returns -1001 in the secondary processes. The message I
> get is:
> 
> rte_eth_dev_start: Cannot run in secondary processes
> 
> Now, I could avoid calling the function altogether, however in this case
> rte_eth_link_get_nowait() reports that the link status is down which is a
> bit inconvenient.
> 
> Did I miss anything or is it just a limitation of ring PMD?
> 
> Alexey Bogdanenko

Sounds like a limitation that shouldn't be there. Possibly a bug.

/Bruce

      reply	other threads:[~2015-12-01 17:45 UTC|newest]

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

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=20151201174534.GA34256@bricha3-MOBL3 \
    --to=bruce.richardson@intel.com \
    --cc=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).