[dpdk-dev] [pbhagavatula at caviumnetworks.com: Re: [PATCH 2/4] eventdev: add caps API and PMD callbacks for eth Tx adapter]

Rao, Nikhil nikhil.rao at intel.com
Mon Jul 16 16:17:40 CEST 2018


> -----Original Message-----
> From: Pavan Nikhilesh [mailto:pbhagavatula at caviumnetworks.com]
> Sent: Monday, July 16, 2018 5:03 PM
> To: Rao, Nikhil <nikhil.rao at intel.com>;
> jkollanukkaran at caviumnetworks.com; olivier.matz at 6wind.com
> Cc: dev at dpdk.org
> Subject: [pbhagavatula at caviumnetworks.com: Re: [dpdk-dev] [PATCH 2/4]
> eventdev: add caps API and PMD callbacks for eth Tx adapter]
> 
> Hi Nikhil,
> 
> On Mon, Jul 16, 2018 at 11:25:45AM +0530, Rao, Nikhil wrote:
> > On 7/10/2018 4:26 PM, Pavan Nikhilesh wrote:
> > > +int __rte_experimental
> > > +rte_event_eth_tx_adapter_caps_get(uint8_t dev_id, uint32_t *caps) {
> > > The caps get API needs to be similar to rx adapter caps get i.e. it
> > > needs to have the eth_port_id as a parameter so that the underlying
> > > event dev driver can expose INTERNAL PORT capability as not all
> > > ethdev drivers have the capability to interact with the eventdevs
> internal port.
> > >
> > > rte_event_eth_tx_adapter_caps_get(uint8_t dev_id, uint16_t
> eth_port_id,
> > >                       uint32_t *caps);
> > Hi Pavan,
> >
> > Is querying the INTERNAL PORT on a per ethdev basis useful to the
> > application ?
> 
> If an application chooses to use 2 ports one with INTERNAL PORT capability
> and one _without_ it then it would be useful to have per ethdev based
> classification similar to Rx adapter. The application can classify events based
> on event type RTE_EVENT_TYPE_ETHDEV &
> RTE_EVENT_TYPE_ETH_RX_ADAPTER to segregate between INTERNAL &
> NON-INTERNAL port at ingress side and enqueue it to either
> rte_event_eth_tx_adapter_enqueue or to the SINGLE link queue
> respectively.
> 
The current tx adapter is very similar to how the eventdev pipeline app decides between using the generic_tx v/s worker_tx, I guess what you are suggesting is using the 2 concurrently. I am fine with this, 
Would you always assume INTERNAL PORT on the Rx side to deduce INTERNAL PORT on the tx side ? Just curious if that was just an example, in the general case, you could have packets ingressing from an INTERNAL port and egressing on a port that is !INTERNAL ?

> Also, I dont think eventdev should iterate over all probed ethdevs and give
> the overall caps as an application might want only a specific ethdev to be
> connected to the event tx adapter.
> 
Agreed. The current adapter only supports either the generic_tx or the worker_tx models and selects either at the earliest point it is feasible to, 

I will update the patch series for  caps_get()

Thanks,
Nikhil


More information about the dev mailing list