From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 289F0A04B7; Wed, 14 Oct 2020 00:53:19 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id B93201DBCC; Wed, 14 Oct 2020 00:53:17 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 5E3C51DBCB; Wed, 14 Oct 2020 00:53:15 +0200 (CEST) IronPort-SDR: r5onZI0qJwQThfBISvJSPCJYhbDmV3b3Pld/O+1k9+HcJtTPJcjNynpWqluGqd5EFUVjmObUJp 0XXlZJqSJ5hg== X-IronPort-AV: E=McAfee;i="6000,8403,9773"; a="145861481" X-IronPort-AV: E=Sophos;i="5.77,372,1596524400"; d="scan'208";a="145861481" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Oct 2020 15:53:12 -0700 IronPort-SDR: HFdAcIlu9iRsRt/4SedUpScnLTRw4oUZnMHbAxorF5Sj5rXKJ11/oprJIWJw6MO2M7AFsPSqOt g7VFoHJnKsxg== X-IronPort-AV: E=Sophos;i="5.77,372,1596524400"; d="scan'208";a="530595116" Received: from fyigit-mobl1.ger.corp.intel.com (HELO [10.213.214.64]) ([10.213.214.64]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Oct 2020 15:53:11 -0700 To: Thomas Monjalon Cc: Andrew Rybchenko , dev@dpdk.org, techboard@dpdk.org, Min Hu References: <20201012164602.1965694-1-ferruh.yigit@intel.com> <3382071.xncihUvvZe@thomas> From: Ferruh Yigit Message-ID: Date: Tue, 13 Oct 2020 23:53:07 +0100 MIME-Version: 1.0 In-Reply-To: <3382071.xncihUvvZe@thomas> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [RFC 1/2] ethdev: move queue stats to xstats 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 10/12/2020 10:53 PM, Thomas Monjalon wrote: > 12/10/2020 18:46, Ferruh Yigit: >> Queue stats are stored in 'struct rte_eth_stats' as array and array size >> is defined by 'RTE_ETHDEV_QUEUE_STAT_CNTRS' compile time flag. >> >> As a result of technical board discussion, decided to remove the queue >> statistics from 'struct rte_eth_stats' in the long term. >> >> Instead PMDs should represent the queue statistics via xstats, this >> gives more flexibility on the number of the queues supported. > > Yes > >> Currently queue stats in the xstats are filled by ethdev layer, using > > "some basic" queue stats > >> the basic stats, when queue stats removed from basic stats the >> responsibility to fill the relevant xstats will be pushed to the PMDs. >> >> During the switch period, a temporary >> 'RTE_ETH_DEV_QUEUE_STATS_IN_XSTATS' device flag is created. The PMDs >> providing the queue stats in the xstats should set this flag to bypass >> the relevant part in ethdev layer. >> >> When all PMDs switch to the xstats for the queue stats, queue stats >> related fields from 'struct rte_eth_stats' will be removed, as well as >> 'RTE_ETH_DEV_QUEUE_STATS_IN_XSTATS' flag. >> Later 'RTE_ETHDEV_QUEUE_STAT_CNTRS' compile time flag also can be >> removed. >> >> Signed-off-by: Ferruh Yigit >> --- >> --- a/lib/librte_ethdev/rte_ethdev.h >> +++ b/lib/librte_ethdev/rte_ethdev.h >> +/** Device provides queue stats in xstats */ >> +#define RTE_ETH_DEV_QUEUE_STATS_IN_XSTATS 0x0040 > > Not exact wording here and in the title. > We should try to convey the idea that the basic queue stats > are not automatically converted from the array to some xstats. > Something like RTE_ETH_DEV_NO_AUTOFILL_QUEUE_XSTATS > > Or we can define the opposite flag and set it by default > in all drivers which fill the basic queue stats. > I suggest RTE_ETH_DEV_AUTOFILL_QUEUE_XSTATS > Agree that opposite flag makes it easier to traces the PMDs missing implementation, will send another RFC with it.