DPDK patches and discussions
 help / color / mirror / Atom feed
From: Nipun Gupta <nipun.gupta@nxp.com>
To: "Rao, Nikhil" <nikhil.rao@intel.com>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "jerinj@marvell.com" <jerinj@marvell.com>,
	"aconole@redhat.com" <aconole@redhat.com>,
	"pbhagavatula@marvell.com" <pbhagavatula@marvell.com>,
	"skori@marvell.com" <skori@marvell.com>,
	Hemant Agrawal <hemant.agrawal@nxp.com>,
	"Richardson, Bruce" <bruce.richardson@intel.com>,
	"Kovacevic, Marko" <marko.kovacevic@intel.com>,
	"orika@mellanox.com" <orika@mellanox.com>,
	"Nicolau, Radu" <radu.nicolau@intel.com>,
	"Kantecki, Tomasz" <tomasz.kantecki@intel.com>,
	"Van Haaren, Harry" <harry.van.haaren@intel.com>
Subject: Re: [dpdk-dev] [PATCH v4] eventdev: flag to identify same destined packets enqueue
Date: Thu, 10 Oct 2019 12:43:34 +0000	[thread overview]
Message-ID: <VI1PR04MB448039C2EC9AF095FC6D8BB6E6940@VI1PR04MB4480.eurprd04.prod.outlook.com> (raw)
In-Reply-To: <1F668163772FA946975B9466A9DFF729EDEE4BAD@ORSMSX122.amr.corp.intel.com>



> -----Original Message-----
> From: Rao, Nikhil <nikhil.rao@intel.com>
> Sent: Thursday, October 10, 2019 3:36 PM
> To: Nipun Gupta <nipun.gupta@nxp.com>; dev@dpdk.org
> Cc: jerinj@marvell.com; aconole@redhat.com; pbhagavatula@marvell.com;
> skori@marvell.com; Hemant Agrawal <hemant.agrawal@nxp.com>;
> Richardson, Bruce <bruce.richardson@intel.com>; Kovacevic, Marko
> <marko.kovacevic@intel.com>; orika@mellanox.com; Nicolau, Radu
> <radu.nicolau@intel.com>; Kantecki, Tomasz <tomasz.kantecki@intel.com>;
> Van Haaren, Harry <harry.van.haaren@intel.com>
> Subject: RE: [PATCH v4] eventdev: flag to identify same destined packets
> enqueue
> 
> Hi Nipun,
> 
> 
> > -----Original Message-----
> > From: Nipun Gupta [mailto:nipun.gupta@nxp.com]
> > Sent: Wednesday, October 9, 2019 1:03 PM
> > To: dev@dpdk.org
> > Cc: jerinj@marvell.com; aconole@redhat.com; pbhagavatula@marvell.com;
> > skori@marvell.com; hemant.agrawal@nxp.com; Richardson, Bruce
> > <bruce.richardson@intel.com>; Kovacevic, Marko
> > <marko.kovacevic@intel.com>; orika@mellanox.com; Nicolau, Radu
> > <radu.nicolau@intel.com>; Kantecki, Tomasz
> <tomasz.kantecki@intel.com>;
> > Van Haaren, Harry <harry.van.haaren@intel.com>; Rao, Nikhil
> > <nikhil.rao@intel.com>; Nipun Gupta <nipun.gupta@nxp.com>
> > Subject: [PATCH v4] eventdev: flag to identify same destined packets
> enqueue
> >
> > This patch introduces a `flag` in the Eth TX adapter enqueue API.
> > Some drivers may support burst functionality only with the packets having
> > same destination device and queue.
> >
> > The flag `RTE_EVENT_ETH_TX_ADAPTER_ENQUEUE_SAME_DEST` can be
> used
> > to indicate this so the underlying driver, for drivers to utilize burst
> functionality
> > appropriately.
> >
> > Signed-off-by: Nipun Gupta <nipun.gupta@nxp.com>
> > Acked-by: Jerin Jacob <jerinj@marvell.com>
> > ---
> >
> > Changes in v4:
> >  - Update rel note specifying the API change
> >  - Remove redundant rte_event_tx_adapter_enqueue_same_dest API
> >
> </snip>
> 
> >  /**
> >   * Enqueue a burst of events objects or an event object supplied in
> *rte_event*
> >   * structure on an  event device designated by its *dev_id* through the
> event
> > @@ -324,6 +329,10 @@
> rte_event_eth_tx_adapter_event_port_get(uint8_t
> > id, uint8_t *event_port_id);
> >   *  The number of event objects to enqueue, typically number of
> >   *  rte_event_port_attr_get(...RTE_EVENT_PORT_ATTR_ENQ_DEPTH...)
> >   *  available for this port.
> > + * @param flags
> > + *  RTE_EVENT_ETH_TX_ADAPTER_ENQUEUE_ flags.
> > + *  #RTE_EVENT_ETH_TX_ADAPTER_ENQUEUE_SAME_DEST signifies that
> all
> > the
> > + packets
> > + *  which are enqueued are destined for the same Ethernet port & Tx
> queue.
> >   *
> >   * @return
> >   *   The number of event objects actually enqueued on the event device.
> The
> > @@ -343,7 +352,8 @@ static inline uint16_t
> > rte_event_eth_tx_adapter_enqueue(uint8_t dev_id,
> >  				uint8_t port_id,
> >  				struct rte_event ev[],
> > -				uint16_t nb_events)
> > +				uint16_t nb_events,
> > +				const uint8_t flags)
> >  {
> >  	const struct rte_eventdev *dev = &rte_eventdevs[dev_id];
> >
> > @@ -359,7 +369,12 @@ rte_event_eth_tx_adapter_enqueue(uint8_t
> dev_id,
> >  		return 0;
> >  	}
> >  #endif
> > -	return dev->txa_enqueue(dev->data->ports[port_id], ev,
> nb_events);
> > +	if (flags)
> > +		return dev->txa_enqueue_same_dest(dev->data-
> > >ports[port_id],
> > +						  ev, nb_events);
> > +	else
> > +		return dev->txa_enqueue(dev->data->ports[port_id], ev,
> > +					nb_events);
> >  }
> 
> For the if (flags) condition to work for the PMDs that support
> RTE_EVENT_ETH_TX_ADAPTER_CAP_INTERNAL_PORT but do not have a
> txa_enqueue_same_dest callback, doesn't the dev-
> >txa_enqueue_same_dest pointer need to be set to the same value as dev-
> >txa_enqueue ?

Something like below would work, but it would be unnecessary additional cost
	if (flags && dev->txa_enqueue_same_dest)

Instead the drivers can have both the function pointers pointing to the same 
function in such cases. Seems legitimate?
Ill add the function pointers in the octeontx and octeontx2 drivers in the next spin.

Thanks,
Nipun

> 
> Thanks,
> Nikhil


  reply	other threads:[~2019-10-10 12:43 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-01  6:46 [dpdk-dev] [PATCH] " Nipun Gupta
2019-10-01  7:44 ` Jerin Jacob
2019-10-01 11:41   ` Nipun Gupta
2019-10-01 13:09     ` Jerin Jacob
2019-10-01 14:02       ` Nipun Gupta
2019-10-01 14:20         ` Jerin Jacob
2019-10-01 15:06           ` Nipun Gupta
2019-10-01 15:35             ` Jerin Jacob
2019-10-02  3:08               ` Hemant Agrawal
2019-10-02  7:54                 ` Jerin Jacob
2019-10-03  6:12                   ` Rao, Nikhil
2019-10-03  6:45                     ` Hemant Agrawal
2019-10-03 10:26                       ` Jerin Jacob
2019-10-21 11:35                         ` Rao, Nikhil
2019-10-22  8:45                           ` Jerin Jacob
2019-10-22  9:42                             ` Rao, Nikhil
2019-10-23  4:53                               ` Jerin Jacob
2019-10-01 14:42 ` Aaron Conole
2019-10-01 15:15   ` Nipun Gupta
2019-10-04  6:55 ` [dpdk-dev] [PATCH v2] " Nipun Gupta
2019-10-04  8:21   ` Jerin Jacob
2019-10-04 10:47 ` [dpdk-dev] [PATCH v3] " Nipun Gupta
2019-10-05 16:23   ` Jerin Jacob
2019-10-09  7:32 ` [dpdk-dev] [PATCH v4] " Nipun Gupta
2019-10-10 10:06   ` Rao, Nikhil
2019-10-10 12:43     ` Nipun Gupta [this message]
2019-10-11  6:14       ` Jerin Jacob
2019-10-11 13:03 ` [dpdk-dev] [PATCH v5] " Nipun Gupta
2019-10-16  6:41   ` Hemant Agrawal
2019-10-16  7:19   ` Jerin Jacob

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=VI1PR04MB448039C2EC9AF095FC6D8BB6E6940@VI1PR04MB4480.eurprd04.prod.outlook.com \
    --to=nipun.gupta@nxp.com \
    --cc=aconole@redhat.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=harry.van.haaren@intel.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=jerinj@marvell.com \
    --cc=marko.kovacevic@intel.com \
    --cc=nikhil.rao@intel.com \
    --cc=orika@mellanox.com \
    --cc=pbhagavatula@marvell.com \
    --cc=radu.nicolau@intel.com \
    --cc=skori@marvell.com \
    --cc=tomasz.kantecki@intel.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).