All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jerin Jacob <jerin.jacob@caviumnetworks.com>
To: Bruce Richardson <bruce.richardson@intel.com>
Cc: Sunil Kumar Kori <sunil.kori@nxp.com>,
	"dev@dpdk.org" <dev@dpdk.org>,
	Hemant Agrawal <hemant.agrawal@nxp.com>
Subject: Re: [PATCH] examples/l3fwd: adding event queue support
Date: Thu, 12 Apr 2018 19:50:48 +0530	[thread overview]
Message-ID: <20180412142047.GA18670@jerin> (raw)
In-Reply-To: <20180412140322.GA59668@bricha3-MOBL.ger.corp.intel.com>

-----Original Message-----
> Date: Thu, 12 Apr 2018 15:03:22 +0100
> From: Bruce Richardson <bruce.richardson@intel.com>
> To: Sunil Kumar Kori <sunil.kori@nxp.com>
> CC: "dev@dpdk.org" <dev@dpdk.org>, Hemant Agrawal <hemant.agrawal@nxp.com>
> Subject: Re: [dpdk-dev] [PATCH] examples/l3fwd: adding event queue support
> User-Agent: Mutt/1.9.4 (2018-02-28)
> 
> On Thu, Apr 12, 2018 at 06:09:04AM +0000, Sunil Kumar Kori wrote:
> > Gentle reminder to review the RFC.
> > 
> > Regards
> > Sunil Kumar
> > 
> 
> Hi,
> 
> sorry for the delay in review.
> 
> /Bruce
> 
> > -----Original Message-----
> > From: Sunil Kumar Kori [mailto:sunil.kori@nxp.com] 
> > Sent: Monday, March 19, 2018 7:15 PM
> > To: dev@dpdk.org
> > Cc: Sunil Kumar Kori <sunil.kori@nxp.com>; Hemant Agrawal <hemant.agrawal@nxp.com>
> > Subject: [PATCH] examples/l3fwd: adding event queue support
> > 
> > This patch set to add the support for eventdev based queue mode support to the l3fwd application.
> > 1. Eventdev support with parallel queue
> > 2. Eventdev support with atomic queue
> > 
> > This patch adds
> > - New command line parameter is added named as "dequeue-mode" which
> >   identifies dequeue method i.e. dequeue via eventdev or polling
> >   (default is polling)
> > . If dequeue mode is via:
> >          a. eventdev: New parameters are added -e, -a, -l  to cater
> > 	    eventdev config, adapter config and link configuration
> >             respectively. "--config" option will be invalid in this case.
> >          b. poll mode: It will work as of existing way and option for
> > 	    eventdev parameters(-e, -a, -l) will be invalid.
> > 
> > - Functions are added in l3fwd_em.c and l3fwd_lpm.c for packet I/O
> >   operation
> > 
> > The main purpose of this RFC is get comments on the approach.
> > This is a *not tested* code.
> > 
> > Signed-off-by: Sunil Kumar Kori <sunil.kori@nxp.com>
> > ---
> >  examples/l3fwd/Makefile         |   2 +-
> >  examples/l3fwd/l3fwd.h          |  21 ++
> >  examples/l3fwd/l3fwd_em.c       | 100 ++++++++
> >  examples/l3fwd/l3fwd_eventdev.c | 541 ++++++++++++++++++++++++++++++++++++++++
> >  examples/l3fwd/l3fwd_eventdev.h |  85 +++++++
> >  examples/l3fwd/l3fwd_lpm.c      | 100 ++++++++
> >  examples/l3fwd/main.c           | 318 +++++++++++++++++++----
> >  examples/l3fwd/meson.build      |   2 +-
> >  8 files changed, 1120 insertions(+), 49 deletions(-)  create mode 100644 examples/l3fwd/l3fwd_eventdev.c  create mode 100644 examples/l3fwd/l3fwd_eventdev.h
> > 
> 
> My initial impression is that this seems like an awful lot of new code just
> to support reading from an eventdev rather than from an ethdev. Looking at
> the datapath main function loop, is the only difference there that
> rte_eth_rx_burst has been changed to rte_eventdev_dequeue_burst or are
> there more significant changes than that?
> 
> If this is the case, is this scale of changes really needed to this app?
> What about the other examples, how many of them will need to be similarly
> updated?
> 
> I'm also wondering if it would help, or be useful, to have a vdev type
> which wraps an eventdev queue as an ethdev. That would eliminate the need
> for the datapath code, and may help abstract away some parts of the setup.
> It would also help with re-use if you anticipate wanting to make a similar
> change to other apps.

Exposing as an ethdev-vdev device will introduce cyclic build dependency(now
eventdev is depended on ethdev). I think, maybe a helper function
in eventdev area to setup Rx adapter and similar slow path logic may work.


> 
> /Bruce
> 

      reply	other threads:[~2018-04-12 14:21 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-19 13:45 [PATCH] examples/l3fwd: adding event queue support Sunil Kumar Kori
2018-04-12  6:09 ` Sunil Kumar Kori
2018-04-12 14:03   ` Bruce Richardson
2018-04-12 14:20     ` Jerin Jacob [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=20180412142047.GA18670@jerin \
    --to=jerin.jacob@caviumnetworks.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=hemant.agrawal@nxp.com \
    --cc=sunil.kori@nxp.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.