From mboxrd@z Thu Jan 1 00:00:00 1970 From: Remy Horton Subject: Re: [dpdk-stable] [PATCH] app/testpmd: add sanity checks when retrieving xstats Date: Thu, 14 Jun 2018 07:39:47 +0100 Message-ID: <94ff9382-dbcd-1afd-b149-349653e1222e@intel.com> References: <1528359323-22885-1-git-send-email-david.marchand@6wind.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: wenzhuo.lu@intel.com, jingjing.wu@intel.com, bernard.iremonger@intel.com, stable@dpdk.org, Harry Van Haaren To: Ferruh Yigit , David Marchand , dev@dpdk.org Return-path: In-Reply-To: List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 13/06/2018 16:39, Ferruh Yigit wrote: > On 6/7/2018 9:15 AM, David Marchand wrote: >> Testpmd should not expect the xstats names and values arrays to be >> aligned: neither the arrays sizes, nor the order in which the values are. > > As far as I can see this assumption is everywhere in API implementation: > xstats names and values are aligned with same order. > The basic stat part of the xstats, implemented in ethdev layer, seems relying on > same assumption. Also looks like "xstat size" and "xstat_names size" used > interchangeably. > > And I don't see any case that mentions xstats.id is xstats_name index. > cc'ed Harry, to get more information about initial intention. > > the id value in xstats struct looks like duplication, but other than that, is > there any downside of using array index to mach name, value pair? > And do we really need another layer of indirection (and complexity) to mach > simple name,value key pair in xstats? When I was working on xstats one of my intentions was to allow PMDs to only return a subset of values for all the keys they declare, with xstats[idx].id==idx just being a coincidence that was not to be relied on. Since then there appears to have been several instances of rework, so no idea if this coincidence becoming an assumption was intentional or an oversight. ..Remy