From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <nikhil.rao@intel.com>
Received: from mga12.intel.com (mga12.intel.com [192.55.52.136])
 by dpdk.org (Postfix) with ESMTP id 4B7F02BDF
 for <dev@dpdk.org>; Mon, 16 Jul 2018 16:18:05 +0200 (CEST)
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
 16 Jul 2018 07:18:05 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.51,361,1526367600"; d="scan'208";a="245648634"
Received: from orsmsx101.amr.corp.intel.com ([10.22.225.128])
 by fmsmga005.fm.intel.com with ESMTP; 16 Jul 2018 07:17:43 -0700
Received: from orsmsx110.amr.corp.intel.com ([169.254.10.90]) by
 ORSMSX101.amr.corp.intel.com ([169.254.8.64]) with mapi id 14.03.0319.002;
 Mon, 16 Jul 2018 07:17:41 -0700
From: "Rao, Nikhil" <nikhil.rao@intel.com>
To: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>,
 "jkollanukkaran@caviumnetworks.com" <jkollanukkaran@caviumnetworks.com>,
 "olivier.matz@6wind.com" <olivier.matz@6wind.com>
CC: "dev@dpdk.org" <dev@dpdk.org>
Thread-Topic: [pbhagavatula@caviumnetworks.com: Re: [dpdk-dev] [PATCH 2/4]
 eventdev: add caps API and PMD callbacks for eth Tx adapter]
Thread-Index: AQHUHPjScS3INnE67UamE1um0oBoQqSRx2og
Date: Mon, 16 Jul 2018 14:17:40 +0000
Message-ID: <1F668163772FA946975B9466A9DFF729ED315E93@ORSMSX110.amr.corp.intel.com>
References: <20180716113311.GB3118@ltp-pvn>
In-Reply-To: <20180716113311.GB3118@ltp-pvn>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
dlp-product: dlpe-windows
dlp-version: 11.0.200.100
dlp-reaction: no-action
x-originating-ip: [10.22.254.139]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: Re: [dpdk-dev] [pbhagavatula@caviumnetworks.com: Re: [PATCH 2/4]
 eventdev: add caps API and PMD callbacks for eth Tx adapter]
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Mon, 16 Jul 2018 14:18:07 -0000


> -----Original Message-----
> From: Pavan Nikhilesh [mailto:pbhagavatula@caviumnetworks.com]
> Sent: Monday, July 16, 2018 5:03 PM
> To: Rao, Nikhil <nikhil.rao@intel.com>;
> jkollanukkaran@caviumnetworks.com; olivier.matz@6wind.com
> Cc: dev@dpdk.org
> Subject: [pbhagavatula@caviumnetworks.com: Re: [dpdk-dev] [PATCH 2/4]
> eventdev: add caps API and PMD callbacks for eth Tx adapter]
>=20
> Hi Nikhil,
>=20
> 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 ?
>=20
> If an application chooses to use 2 ports one with INTERNAL PORT capabilit=
y
> 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.
>=20
The current tx adapter is very similar to how the eventdev pipeline app dec=
ides between using the generic_tx v/s worker_tx, I guess what you are sugge=
sting is using the 2 concurrently. I am fine with this,=20
Would you always assume INTERNAL PORT on the Rx side to deduce INTERNAL POR=
T 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 egressin=
g on a port that is !INTERNAL ?

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

I will update the patch series for  caps_get()

Thanks,
Nikhil