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 A1512A00E6 for ; Tue, 6 Aug 2019 08:49:21 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 9A8831B9A5; Tue, 6 Aug 2019 08:49:21 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id BF1351B997 for ; Tue, 6 Aug 2019 08:49:20 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Aug 2019 23:49:19 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,352,1559545200"; d="scan'208";a="176542476" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by orsmga003.jf.intel.com with ESMTP; 05 Aug 2019 23:49:19 -0700 Received: from fmsmsx154.amr.corp.intel.com (10.18.116.70) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 5 Aug 2019 23:49:19 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by FMSMSX154.amr.corp.intel.com (10.18.116.70) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 5 Aug 2019 23:49:18 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.112]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.139]) with mapi id 14.03.0439.000; Tue, 6 Aug 2019 14:49:17 +0800 From: "Wang, Yinan" To: "Mo, YufengX" , "dts@dpdk.org" CC: "Mo, YufengX" Thread-Topic: [dts] [PATCH V2 1/2] ethtool_stats: upload test plan Thread-Index: AQHVS1U2GH6cRMHxkEK0SEyT4r/phabtr3BQ Date: Tue, 6 Aug 2019 06:49:16 +0000 Message-ID: References: <1564985769-151796-1-git-send-email-yufengx.mo@intel.com> <1564985769-151796-2-git-send-email-yufengx.mo@intel.com> In-Reply-To: <1564985769-151796-2-git-send-email-yufengx.mo@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMWFlNDczZWYtZmFkNC00Mzc0LTk3ZjctMzBiZTIyODJiYmJmIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiUDZYK2llQnJpSXR3eFpjZkVWWWIxaG45ZUdrQ2UydEJLc0ZGZFJzMkQ5Y01ES1F0WDJ4Y3czSzNOajdmS3V1cyJ9 x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.600.7 dlp-reaction: no-action x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dts] [PATCH V2 1/2] ethtool_stats: upload test plan X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org Sender: "dts" Acked-by: Wang, Yinan > -----Original Message----- > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of yufengmx > Sent: 2019=1B$BG/=1B(B8=1B$B7n=1B(B5=1B$BF|=1B(B 14:16 > To: dts@dpdk.org > Cc: Mo, YufengX > Subject: [dts] [PATCH V2 1/2] ethtool_stats: upload test plan >=20 >=20 > Currently Ethtool supports a more complete list of stats for the same dri= vers that > DPDK supports. The idea behind this epic is two fold as following: > 1. To achieve metric equivalence with what linux's ethtool provides. > 2. To extend the functionality of the xstats API to enable the following = options: > ## the retrieval of aggregate stats upon request (Top level stats). > ## the retrieval of the extended NIC stats. > ## grouping of stats logically so they can be retrieved per logical gr= ouping. > ## the option to enable/disable the stats groups to retrieve similar t= o set > private flags in ethtool. >=20 > Signed-off-by: yufengmx > --- > test_plans/ethtool_stats_test_plan.rst | 161 > +++++++++++++++++++++++++++++++++ > 1 file changed, 161 insertions(+) > create mode 100644 test_plans/ethtool_stats_test_plan.rst >=20 > diff --git a/test_plans/ethtool_stats_test_plan.rst > b/test_plans/ethtool_stats_test_plan.rst > new file mode 100644 > index 0000000..13b5909 > --- /dev/null > +++ b/test_plans/ethtool_stats_test_plan.rst > @@ -0,0 +1,161 @@ > +.. Copyright (c) <2010-2019>, Intel Corporation > + All rights reserved. > + > + Redistribution and use in source and binary forms, with or without > + modification, are permitted provided that the following conditions > + are met: > + > + - Redistributions of source code must retain the above copyright > + notice, this list of conditions and the following disclaimer. > + > + - Redistributions in binary form must reproduce the above copyright > + notice, this list of conditions and the following disclaimer in > + the documentation and/or other materials provided with the > + distribution. > + > + - Neither the name of Intel Corporation nor the names of its > + contributors may be used to endorse or promote products derived > + from this software without specific prior written permission. > + > + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND > CONTRIBUTORS > + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT > + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS > + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE > + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, > INDIRECT, > + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES > + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS > OR > + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) > + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN > CONTRACT, > + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) > + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED > + OF THE POSSIBILITY OF SUCH DAMAGE. > + > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > +ethtool stats > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > + > +This document provides test plan for ethtool stats . This is a simple > +example app featuring packet processing, ethtool is a utility for Linux > +kernel-based operating system for displaying and modifying some > +parameters of network interface controllers (NICs) and their device driv= ers. > + > +Currently Ethtool supports a more complete list of stats for the same > +drivers that DPDK supports. The idea behind this epic is two fold as fol= lowing. > +1. To achieve metric equivalence with what linux's ethtool provides. > +2. To extend the functionality of the xstats API to enable the following= options:: > + > + - the retrieval of aggregate stats upon request (Top level stats). > + - the retrieval of the extended NIC stats. > + - grouping of stats logically so they can be retrieved per logical g= rouping. > + - the option to enable/disable the stats groups to retrieve similar = to set > private flags in ethtool. > + > +Prerequisites > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > + > +2xNICs (2 full duplex optical ports per NIC). One on dut, another one > +on tester, link them together. Update two nics' firmware to latest versi= on. > + > +Test cases > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > + > +Check port extended statistics parameter after sending packet from peer = link > port. > + > +bind two ports:: > + > + ./usertools/dpdk-devbind.py --bind=3Digb_uio + address 2> > + > +Test Case: xstat command set intergrity > +--------------------------------------- > + > +check ``dpdk-procinfo`` tool support ``xstats`` command options. > + > +These options should be included:: > + > + ``xstats`` > + ``xstats-name`` > + ``xstats-id`` > + ``xstats-reset`` > + > +steps: > + > +#. boot up ``testpmd``:: > + > + .//app/testpmd -c 0x600006 -n 4 -- -i > + --port-topology=3Dloop > + > +#. run ``dpdk-procinfo`` tool:: > + > + .//app/dpdk-procinfo > + > +#. check ``dpdk-procinfo`` tool output should contain upper options. > + > +Test Case: xstat command > +------------------------ > + > +check if port extended statistics can get right data. > + > +steps: > + > +#. boot up ``testpmd``:: > + > + .//app/testpmd -c 0x600006 -n 4 -- -i > + --port-topology=3Dloop > + > +#. send udp packet of 64/72/128/256/512/1024 size to port 0/1:: > + > + sendp([Ether()/IP()/UDP()/Raw('\0'*60)], iface=3D) > + > +#. run ``dpdk-procinfo`` tool with ``xstats`` option and check if all po= rt have > + a correct data of different size packet:: > + > + .//app/dpdk-procinfo -- -p 3 --xstats > + > +Test Case: xstat-reset command > +------------------------------ > + > +check if port extended statistics can be cleared. > + > +steps: > + > +#. boot up ``testpmd``:: > + > + .//app/testpmd -c 0x600006 -n 4 -- -i > + --port-topology=3Dloop > + > +#. send udp packet of 64/72/128/256/512/1024 size to port 0/1:: > + > + sendp([Ether()/IP()/UDP()/Raw('\0'*60)], iface=3D) > + > +#. run ``dpdk-procinfo`` tool with ``xstats-reset`` option and check if = all port > + statistics have been cleared:: > + > + .//app/dpdk-procinfo -- -p 3 --xstats-reset > + > +Test Case: xstat single statistic > +--------------------------------- > + > +check if port extended statistic name can be get by statistic id and > +check related data's correctness. > + > +steps: > + > +#. boot up ``testpmd``:: > + > + .//app/testpmd -c 0x600006 -n 4 -- -i > + --port-topology=3Dloop > + > +#. run ``dpdk-procinfo`` tool with ``xstats`` option to get all NIC exte= nded > + statistics parameters of port and use the output display sequence as > parameter > + index in the following search index:: > + > + .//app/dpdk-procinfo -- -p 3 --xstats > + > +#. send udp packet of 64/72/128/256/512/1024 size to port 0/1:: > + > + sendp([Ether()/IP()/UDP()/Raw('\0'*60)], iface=3D) > + > +#. run ``dpdk-procinfo`` tool with ``xstats-id`` option to get the stati= stic > + name corresponding with the index id:: > + > + .//app/dpdk-procinfo -- -p 3 --xstats-id 0,1,...N > + > +#. run ``dpdk-procinfo`` tool with ``xstats-name`` option to get the sta= tistic > + data corresponding with the statistic name:: > + > + .//app/dpdk-procinfo -- -p 3 --xstats-name + name> > \ No newline at end of file > -- > 1.9.3