From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by dpdk.org (Postfix) with ESMTP id 656471E33 for ; Thu, 1 Feb 2018 15:19:38 +0100 (CET) X-Amp-Result: UNSCANNABLE X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 01 Feb 2018 06:19:37 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,444,1511856000"; d="scan'208";a="197888556" Received: from bricha3-mobl3.ger.corp.intel.com ([10.237.221.77]) by orsmga005.jf.intel.com with SMTP; 01 Feb 2018 06:19:34 -0800 Received: by (sSMTP sendmail emulation); Thu, 01 Feb 2018 14:19:33 +0000 Date: Thu, 1 Feb 2018 14:19:33 +0000 From: Bruce Richardson To: Shreyansh Jain Cc: dev@dpdk.org, ferruh.yigit@intel.com, thomas@monjalon.net, matan@mellanox.com, konstantin.ananyev@intel.com, hemant.agrawal@nxp.com Message-ID: <20180201141933.GA14048@bricha3-MOBL3.ger.corp.intel.com> References: <20180201124439.21633-1-shreyansh.jain@nxp.com> <20180201124823.22621-1-shreyansh.jain@nxp.com> <20180201132724.GB13884@bricha3-MOBL3.ger.corp.intel.com> <78379784-5872-b051-bede-27ee4a8c0845@nxp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <78379784-5872-b051-bede-27ee4a8c0845@nxp.com> Organization: Intel Research and Development Ireland Ltd. User-Agent: Mutt/1.9.1 (2017-09-22) Subject: Re: [dpdk-dev] [PATCH v2] doc: add preferred burst size support X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Feb 2018 14:19:38 -0000 On Thu, Feb 01, 2018 at 07:58:32PM +0530, Shreyansh Jain wrote: > On Thursday 01 February 2018 06:57 PM, Bruce Richardson wrote: > > On Thu, Feb 01, 2018 at 06:18:23PM +0530, Shreyansh Jain wrote: > > > rte_eth_rx_burst(..,nb_pkts) function has semantic that if return value > > > is smaller than requested, application can consider it end of packet > > > stream. Some hardware can only support smaller burst sizes which need > > > to be advertised. Similar is the case for Tx burst. > > > > > > This patch adds deprecation notice for rte_eth_dev_info structure as > > > two new members, for preferred Rx and Tx burst size would be added - > > > impacting the size of the structure. > > > > > > Signed-off-by: Shreyansh Jain > > > --- > > > * Refer: http://dpdk.org/dev/patchwork/patch/32112 for context > > > > > > v2: > > > - fix spelling error in deprecation notice > > > > > > doc/guides/rel_notes/deprecation.rst | 8 ++++++++ > > > 1 file changed, 8 insertions(+) > > > > > > diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst > > > index d59ad5988..fdc7656fa 100644 > > > --- a/doc/guides/rel_notes/deprecation.rst > > > +++ b/doc/guides/rel_notes/deprecation.rst > > > @@ -59,3 +59,11 @@ Deprecation Notices > > > be added between the producer and consumer structures. The size of the > > > structure and the offset of the fields will remain the same on > > > platforms with 64B cache line, but will change on other platforms. > > > + > > > +* ethdev: Currently, if the rte_eth_rx_burst() function returns a value less > > > + than *nb_pkts*, the application will assume that no more packets are present. > > > + Some of the hw queue based hardware can only support smaller burst for RX > > > + and TX and thus break the expectation of the rx_burst API. Similar is the > > > + case for TX burst. ``rte_eth_dev_info`` will be added with two new > > > + parameters, ``uint16_t pref_rx_burst`` and ``uint16_t pref_tx_burst``, > > > + for preferred RX and TX burst sizes, respectively. > > > -- > > > 2.14.1 > > > > > > > LTGM as far as it goes, but following discussion on this patch, > > http://dpdk.org/ml/archives/dev/2018-January/089585.html > > I think we might also want to add in parameters for "pref_tx_ring_sz" > > and "pref_rx_ring_sz" too. While it is the case that, once the structure > > is changed, we can make multiple additional changes, I think it might be > > worth mentioning as many as we can for completeness. > > > > Another point to consider, is whether we might want to add in a > > sub-structure for "preferred_settings" to hold all these, rather than > > just adding them as new fields. It might help with making names more > > readable (though also longer). > > > > struct { > > uint16_t rx_burst; > > uint16_t tx_burst; > > uint16_t rx_ring_sz; > > uint16_t tx_ring_sz; > > } preferred_settings; > > This, and the point above that we can make multiple additional changes, is > definitely a good idea. Though, 'preferred_setting' is long and has chances > of spell mistakes in first go - what about just 'pref' or, 'pref_size' if > only 4 mentioned above are part of this. > > For now I saw need for burst size because I hit that case. Ring size looks > logical to me. We can have a look if more such toggles are required. > I actually don't like the abbreviation "pref", as it looks too much like "perf" short for performance. As this is an initialization setting, I also don't think having a longer name is that big of deal. How about calling them "suggested" or "recommended" settings - both of which have less fiddly spellings. /Bruce