From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 0666E9E7 for ; Tue, 8 Nov 2016 14:33:26 +0100 (CET) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga102.jf.intel.com with ESMTP; 08 Nov 2016 05:33:23 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,462,1473145200"; d="scan'208";a="899044144" Received: from irsmsx151.ger.corp.intel.com ([163.33.192.59]) by orsmga003.jf.intel.com with ESMTP; 08 Nov 2016 05:33:22 -0800 Received: from irsmsx106.ger.corp.intel.com ([169.254.8.99]) by IRSMSX151.ger.corp.intel.com ([169.254.4.28]) with mapi id 14.03.0248.002; Tue, 8 Nov 2016 13:33:21 +0000 From: "Tahhan, Maryam" To: "Dai, Wei" , Thomas Monjalon , "Mcnamara, John" , "Ananyev, Konstantin" , "Wu, Jingjing" , "Zhang, Helin" , "Dai, Wei" , "Curran, Greg" CC: "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH] ethdev: fix statistics description Thread-Index: AQHR/4HtdXHDS13GV0mk5ZMoEuF95qCYNT+AgC2R9ICACZk0oA== Date: Tue, 8 Nov 2016 13:33:20 +0000 Message-ID: <1A27633A6DA49C4A92FCD5D4312DBF536B3CF3A4@IRSMSX106.ger.corp.intel.com> References: <1472206104-22035-1-git-send-email-wei.dai@intel.com> <2544827.v0ahXV4zxG@xps13> <49759EB36A64CF4892C1AFEC9231E8D63A2EB13C@PGSMSX106.gar.corp.intel.com> In-Reply-To: <49759EB36A64CF4892C1AFEC9231E8D63A2EB13C@PGSMSX106.gar.corp.intel.com> Accept-Language: en-IE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [163.33.239.181] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH] ethdev: fix statistics description X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Nov 2016 13:33:27 -0000 >=20 > Hi, John & Greg >=20 > Would you please give any opinion for this patch ? >=20 > I have looked through all PMDs and found not all statistics items can be > supported by some NIC. > For example, rx_nombuf, q_ipackets, q_opackets, q_ibytes and q_obytes > are not supported by i40e. Queue stats should be supported by i40e as we have access to struct i40e_qu= eue_stats this is a gap. Same for e1000. For me (from a stats perspective), we should be able to report everything t= hat ethtool can report for the different kernel network drivers (as we have= the same base driver code in DPDK). In other words, the DPDK stats API sho= uld provide the same set of stats as a standard networking interface would = to an external monitoring tool in case we want to perform some sort of anal= ytics on it afterwards. At a very minimum the top level stats should include: ipackets, opackets, i= bytes, obytes, imissed, ierrors, oerrors. The queue stats in theory cou= ld be migrated to the xstats, it would require a lot of clean up in existin= g drivers which is why we didn't remove them when we did the original clean= up of the struct for the xstats API. > But when the function rte_eth_stats_get(uint8_t port_id, struct > rte_eth_stats *stats) is called for i40e PMD, Above un-supported statisti= cs > item in output stats are zero, this is not real value. Agreed - should not output 0 for these. But should ensure where stats are p= ossible to obtain, we support them in DPDK. > So far, there is no way to know whether an item in struct rte_eth_stats i= s > supported or not only from this structure definition. > Maybe some structure member can be added to indicate each of statistics > item valid or not. > But this means ABI change. Migrating the queue/nonstandard stats to the xstats API would fix this, the= only issue is with the existing drivers that are unsupported fields with 0= . >=20 > In following list, I list statistics support details of all PMDs. > Hope it can be displayed in your screen. >=20 Thanks for this, it's very helpful. I'm currently collating a list of the m= issing stats for e1000, ixgbe and i40e from DPDK. So this is very helpful. > Thanks > /Wei >=20 > NIC ipackets opackets ibytes obytes imissed ierrors oerr= ors > rx_nombuf q_ipackets q_opacktes q_ibytes q_obytes q_errors > af_packet y y y y n n y = n y y y y > y > bnx2x y y y y y y y = y n n n n > n > bnxt y y y y y y y = n y y y y > y > bonding y y y y y y y = y y y y y > y > cxgbe y y y y y y y = n y y y y > y > e1000(igb) y y y y y y y = n n n n n > n > e1000(igbvf) y y y y n n n = n n n n > n n > ena y y y y y y y = y n n n n > n > enic y y y y y y y = y n n n n > n > fm10k y y y y n n n = n y y y y > n > i40e y y y y y y y = n n n n n > n > i40evf y y y y n y y = n n n n n > n > ixgbe y y y y y y y = n y y y y > y > ixgbevf y y y y n n n = n n n n n > n > mlx4 y y y y n y y = y y y y y > y > mlx5 y y y y n y y = y y y y y > y > mpipe y y y y n y y = y y y y y > y > nfp y y y y y y y = y y y y y > n > null y y n n n n y = n y y n n > y > pcap y y y y n n y = n y y y y > y > qede y y y y y y y = y n n n n > n > ring y y n n n n y = n y y n n > y > szedata2 y y y y n n y = n y y y y > y > thunderx y y y y y y y = n y y y y > n > vhost y y y y n n y = n y y y y > n > virtio y y y y n y y = y y y y y > n > vmxnet3 y y y y n y y = y y y y y > y > xenvirt y y n n n n n = n n n n n > n >=20 > > -----Original Message----- > > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > > Sent: Tuesday, October 4, 2016 5:35 PM > > To: Dai, Wei ; Mcnamara, John > > > > Cc: dev@dpdk.org > > Subject: Re: [dpdk-dev] [PATCH] ethdev: fix statistics description > > > > 2016-08-26 18:08, Wei Dai: > > > /** > > > * A structure used to retrieve statistics for an Ethernet port. > > > + * Not all statistics fields in struct rte_eth_stats are supported > > > + * by any type of network interface card (NIC). If any statistics > > > + * field is not supported, its value is 0 . > > > */ > > > struct rte_eth_stats { > > > > I'm missing the point of this patch. > > Why do you think it is a fix? > > > > John, any opinion? >=20