From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jerin Jacob Subject: Re: [PATCH] ethdev: add lock-less txq capability flag Date: Thu, 6 Jul 2017 11:30:10 +0530 Message-ID: <20170706060008.GA8916@jerin> References: <20170421122223.24194-1-jerin.jacob@caviumnetworks.com> <1937111.PEUejtoCqE@xps> <20170427105934.GA4375@jerin> <3952630.qNnCRMOujm@xps> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: dev@dpdk.org, bruce.richardson@intel.com, harry.van.haaren@intel.com, hemant.agrawal@nxp.com, gage.eads@intel.com, nipun.gupta@nxp.com, santosh.shukla@caviumnetworks.com To: Thomas Monjalon Return-path: Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0052.outbound.protection.outlook.com [104.47.42.52]) by dpdk.org (Postfix) with ESMTP id 6BA8E1C0B for ; Thu, 6 Jul 2017 08:00:31 +0200 (CEST) Content-Disposition: inline In-Reply-To: <3952630.qNnCRMOujm@xps> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" -----Original Message----- > Date: Wed, 05 Jul 2017 19:46:54 +0200 > From: Thomas Monjalon > To: Jerin Jacob > Cc: dev@dpdk.org, bruce.richardson@intel.com, harry.van.haaren@intel.com, > hemant.agrawal@nxp.com, gage.eads@intel.com, nipun.gupta@nxp.com, > santosh.shukla@caviumnetworks.com > Subject: Re: [dpdk-dev] [PATCH] ethdev: add lock-less txq capability flag > > 27/04/2017 13:00, Jerin Jacob: > > -----Original Message----- > > > Which hardware supports it? > > > > Cavium OCTEONTX Packet transmission HW block(PKO). > > > > > > > > [...] > > > > --- a/lib/librte_ether/rte_ethdev.h > > > > +++ b/lib/librte_ether/rte_ethdev.h > > > > +#define DEV_TX_OFFLOAD_TXQ_MT_LOCKFREE 0x00004000 > > > > +/**< Multiple threads can invoke rte_eth_tx_burst() concurrently on the > > > > same + * tx queue without SW lock. > > > > + */ > > > > > > Why TXQ in the name? DEV_TX_OFFLOAD_MT_LOCKFREE would be enough. > > > > OK > > > > > I wonder whether "lock free" wording is confusing because > > > the locks are probably handled in HW. > > > > Yes. Another reason why it possible because HW is not using ring like scheme(head and tail pointers) > > for Tx. "lock free" wording is more from software perspective. > > > > > I think the good wording is "offloaded multi-thread capability", > > > maybe with a naming like DEV_TX_OFFLOAD_MT. > > > > I think SW lock free is the capability here.IMO, it better to reflect the > > capability in the name(DEV_TX_OFFLOAD_MT_LOCKFREE). > > > > > > > > Anyway we should reference this flag in rte_eth_tx_burst() > > > and give more details in doc/guides/prog_guide/poll_mode_drv.rst. > > > > OK. Will address in v2. > > > > > > > > Should we wait a first hardware PoC to add this flag? > > > > If we are in agreement for method expose this feature through capability > > flag then should we really need to wait for driver implementation to > > accept the patch? Thoughts ? > > This flag has impact on how we handle the even dev applications if HW support available. > > We are in the process of up-streaming OCTEONTX ethdev driver, but there > > are few thing like with external pool manager and eventdev integration > > needs to be sorted out cleanly before that. > > > > > Candidate for 17.08? > > Any news of a v2? I will send the v2. >