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 69138A00BE; Wed, 8 Jul 2020 05:31:53 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id EE39E1DD62; Wed, 8 Jul 2020 05:31:52 +0200 (CEST) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 6EE111DD46 for ; Wed, 8 Jul 2020 05:31:51 +0200 (CEST) IronPort-SDR: yhSdOWqKOiaAot/guOC1FKJjoV5ZdO9WmYWC5FtZd96hhpJMlJngW+aJORXW/fanX394dIKYYA lK7mnWujj7Kw== X-IronPort-AV: E=McAfee;i="6000,8403,9675"; a="135968242" X-IronPort-AV: E=Sophos;i="5.75,326,1589266800"; d="scan'208";a="135968242" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jul 2020 20:31:49 -0700 IronPort-SDR: TQtijaWfQfSTJtRPmyX19bfCPlRYcn1Pd8ZGYzXw9vbOYOszaXX5k2pKUO/UAGHEscNRa2/lr8 Rd29OIWvsQ/g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,326,1589266800"; d="scan'208";a="268363353" Received: from fmsmsx606.amr.corp.intel.com ([10.18.126.86]) by fmsmga008.fm.intel.com with ESMTP; 07 Jul 2020 20:31:46 -0700 Received: from fmsmsx606.amr.corp.intel.com (10.18.126.86) by fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 7 Jul 2020 20:31:46 -0700 Received: from FMSEDG002.ED.cps.intel.com (10.1.192.134) by fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Tue, 7 Jul 2020 20:31:46 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.42) by edgegateway.intel.com (192.55.55.69) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 7 Jul 2020 20:31:44 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hVHHPDSIl7XiQZk/e7Ef5bDsPDZvnTvIqDNzYwo0/hCWwIkxbUrnWtO6sDsGXjRbGH5ia024jnHMCFmy6SnMZ8vz/jKg8nRa2+bq7E8BUDHWdyrYUacnZFP/kL3DbdfXLqHRcOCNBQyOEouF4ml7rRUfnpbmLJsECo3jBc7vfv1pg/mclABdhCe0NVSjL3Y5EGcHSA7XvHAvLBO8bin96MdbW/OYoe1lXCh48xq+kj6WhcBFu6VlnVM3fo0FKF/Gat2w8KOR6ObZ5KyEFrpzjQI2zWvBDF8oa9DcnCXANknVPMz8viiMI43YBaSiha+wSxN4SbLgFz0u8xkJydCvsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2+2li0j9KwFBAZXJ4hWEKBWtZBt9fNjC2Dd6H2fPYkM=; b=HaA77aj8VRApNWt1Cg9jjvn9KgT7dMUkJKRoN6WykFF6JjoU7dO1qR9T/KiZRcCedN0rD/bvL8y2RFXhpqbYmf/6vjYvJZNzx2ZV2D0fmh2QtOImXux00GzIETEEvIQ4mkT+NbyD2SHI20ACPicTX0U8ssY6z4zPfYA2N+40lD2Zee5/I0ewBsLLtQG8eWgQUX94A9AjkPxj0o9e6xSMmj4bk7SeepzHfaJaFztlAZfQR4eMOrF0/+Zc2rkIj1MHFc4hI79xgeyjSE7rXPQzUdJ7xo4mDgt+6mjTVx7+UF3X5e/P80pf37ArcyhmrmJMslzLbXZObU3hDt7ymE7hqA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2+2li0j9KwFBAZXJ4hWEKBWtZBt9fNjC2Dd6H2fPYkM=; b=mJLJ2rPL2/fzva5vrDK9JzqG+RWnMHuqHdS2MMfp2Ca/LIK0h2B/anq2Jvr4x9CRfWjDIyznEOl5XYQHvsHsJcNpMFLgS1PFlmjKwQfVHgzKdPDbus66ceMxB5+2FKoyPMooC7VHQw0JeqAX+d6XWZ/VD/jjBc4zjICtHBQ7cyo= Received: from BN6PR11MB0017.namprd11.prod.outlook.com (2603:10b6:405:6c::34) by BN7PR11MB2611.namprd11.prod.outlook.com (2603:10b6:406:aa::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.20; Wed, 8 Jul 2020 03:31:40 +0000 Received: from BN6PR11MB0017.namprd11.prod.outlook.com ([fe80::c8eb:f4c9:5b58:3120]) by BN6PR11MB0017.namprd11.prod.outlook.com ([fe80::c8eb:f4c9:5b58:3120%6]) with mapi id 15.20.3153.029; Wed, 8 Jul 2020 03:31:40 +0000 From: "Yang, Qiming" To: "Di, ChenxuX" , "dev@dpdk.org" Thread-Topic: [PATCH v4 3/5] app/testpmd: re-implement commands by using private API Thread-Index: AQHWVMhZpimzSZrUdkaIFBXsKtYpQqj9Burg Date: Wed, 8 Jul 2020 03:31:40 +0000 Message-ID: References: <20200611060142.75465-1-chenxux.di@intel.com> <20200708011841.22295-1-chenxux.di@intel.com> <20200708011841.22295-4-chenxux.di@intel.com> In-Reply-To: <20200708011841.22295-4-chenxux.di@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.102.204.38] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 9f531179-e9c1-4aae-1fc5-08d822ef6ded x-ms-traffictypediagnostic: BN7PR11MB2611: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:3276; x-forefront-prvs: 04583CED1A x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 7WWRHNwJ9y+yF5+V4pyVm6dn+Vt8gsEaMvqPSMEPLUIAqvSplV0T7NXl31iUp8I/5bb59p7HLGVo2xaknrsgFP974jPdNFC3HweNE/Q8+BPYDwVRzbVybNqrje2glwdBW4XQKAIvDfbckl7f42G+FlQ6jULSvWmtCWbq6/7XfbLTYeWFUzldT3ZPpg35+w3fL4EXw55K1xvoWOoMPvhCN9jCO9HIDpcTQgvjZ60f7wpzsar+mgPs6d0t2c2Ir3irGls052DnqK9KYfrdbyYCmnmqUYNT9BlLBnt3/89EMLeiGfHH3C8VPMnjxV1dhtxhJIxfSCqFxZ4ex+1+kJaPcQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN6PR11MB0017.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(346002)(396003)(376002)(136003)(366004)(39860400002)(5660300002)(7696005)(52536014)(6506007)(53546011)(71200400001)(186003)(26005)(8936002)(86362001)(110136005)(83380400001)(8676002)(478600001)(33656002)(316002)(66446008)(64756008)(66556008)(66946007)(2906002)(76116006)(66476007)(9686003)(55016002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: HQms+SmMROsCSWUX3qHRHm/AcKRcXrYSo28KHdLzxo5B0687gFaP5SXnU2utmJwPw8qIzym1hViMqSqer9uatPvvUu0/rdybE3PDdvdrCdwkfIqsK+GlMFq3NvUisdS67kUUN8dR7N7aLZcB1nxxZFtBrsUSxycP+EuOxGR1Kj8qBcp6mtxwhjhE0jp6ZRta0o0mRDtMjMX7x1gF3vG5lgE9Sw3ThQZlRDlcbzQEsJd1erGmaxdp9mkm9MtmJFssF9A+zF09rF3t1u1XT+TOM8zblvBXcXfHsdIitH7Zp3W/O2+Lv4ZvbYJSNquZc51hW3gjfwIYRIS+02bXUrnEF7fsI/U/c7gY3BxVf0VRYuwFtYsJGuUcHNB78zzHRT5Kp1bt+O0WukMeCxjsVvIz4KE00/SJJQSeszabAu2LIZeE9VgZLJvzZSYOl37y+OxJ25c4eOL5+jLwhIPd0mgtgqxCbUsDDVdL7lRLPqVwFLbSOyfez+iXtKnG2Sm5qmxc Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN6PR11MB0017.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9f531179-e9c1-4aae-1fc5-08d822ef6ded X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jul 2020 03:31:40.7611 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: a9hFvedSwZL3Oij7nZ+nJadkkJv28WZXUrL5reWtM5SeFmtOlHffa4Kv78+YbWTb/pSzeRf0obr2bcUAKfNCkA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR11MB2611 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v4 3/5] app/testpmd: re-implement commands by using private API 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" Acked-by: Qiming Yang > -----Original Message----- > From: Di, ChenxuX > Sent: Wednesday, July 8, 2020 09:19 > To: dev@dpdk.org > Cc: Yang, Qiming ; Di, ChenxuX > > Subject: [PATCH v4 3/5] app/testpmd: re-implement commands by using > private API >=20 > The legacy filter API will be superseded. This patch use private api to c= hange > the implementation of commands global_config gre-key-len > and show port fdir >=20 > Signed-off-by: Chenxu Di > --- > app/test-pmd/cmdline.c | 4 +++ > app/test-pmd/config.c | 57 ++++++++++++++++++++++++++++++++++---- > ---- > 2 files changed, 50 insertions(+), 11 deletions(-) >=20 > diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c index > 81c87c8c3..39ad93838 100644 > --- a/app/test-pmd/cmdline.c > +++ b/app/test-pmd/cmdline.c > @@ -9291,6 +9291,10 @@ cmd_global_config_parsed(void *parsed_result, > conf.cfg.gre_key_len =3D res->len; > ret =3D rte_eth_dev_filter_ctrl(res->port_id, RTE_ETH_FILTER_NONE, > RTE_ETH_FILTER_SET, &conf); > +#ifdef RTE_LIBRTE_I40E_PMD > + if (ret =3D=3D -ENOTSUP) > + ret =3D rte_pmd_i40e_set_gre_key_len(res->port_id, res- > >len); #endif > if (ret !=3D 0) > printf("Global config error\n"); > } > diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index > 75013100f..cf14b584f 100644 > --- a/app/test-pmd/config.c > +++ b/app/test-pmd/config.c > @@ -3746,30 +3746,65 @@ print_fdir_flow_type(uint32_t flow_types_mask) > printf("\n"); > } >=20 > +static int > +get_fdir_info(portid_t port_id, struct rte_eth_fdir_info *fdir_info, > + struct rte_eth_fdir_stats *fdir_stat) { > + int ret; > + > + ret =3D rte_eth_dev_filter_supported(port_id, RTE_ETH_FILTER_FDIR); > + if (!ret) { > + rte_eth_dev_filter_ctrl(port_id, RTE_ETH_FILTER_FDIR, > + RTE_ETH_FILTER_INFO, fdir_info); > + rte_eth_dev_filter_ctrl(port_id, RTE_ETH_FILTER_FDIR, > + RTE_ETH_FILTER_STATS, fdir_stat); > + return 0; > + } > + > +#ifdef RTE_LIBRTE_I40E_PMD > + if (ret =3D=3D -ENOTSUP) { > + ret =3D rte_pmd_i40e_get_fdir_info(port_id, fdir_info); > + if (!ret) > + ret =3D rte_pmd_i40e_get_fdir_stats(port_id, > fdir_stat); > + } > +#endif > +#ifdef RTE_LIBRTE_IXGBE_PMD > + if (ret =3D=3D -ENOTSUP) { > + ret =3D rte_pmd_ixgbe_get_fdir_info(port_id, fdir_info); > + if (!ret) > + ret =3D rte_pmd_ixgbe_get_fdir_stats(port_id, > fdir_stat); > + } > +#endif > + switch (ret) { > + case 0: > + break; > + case -ENOTSUP: > + printf("\n FDIR is not supported on port %-2d\n", > + port_id); > + break; > + default: > + printf("programming error: (%s)\n", strerror(-ret)); > + break; > + } > + return ret; > +} > + > void > fdir_get_infos(portid_t port_id) > { > struct rte_eth_fdir_stats fdir_stat; > struct rte_eth_fdir_info fdir_info; > - int ret; >=20 > static const char *fdir_stats_border =3D > "########################"; >=20 > if (port_id_is_invalid(port_id, ENABLED_WARN)) > return; > - ret =3D rte_eth_dev_filter_supported(port_id, RTE_ETH_FILTER_FDIR); > - if (ret < 0) { > - printf("\n FDIR is not supported on port %-2d\n", > - port_id); > - return; > - } >=20 > memset(&fdir_info, 0, sizeof(fdir_info)); > - rte_eth_dev_filter_ctrl(port_id, RTE_ETH_FILTER_FDIR, > - RTE_ETH_FILTER_INFO, &fdir_info); > memset(&fdir_stat, 0, sizeof(fdir_stat)); > - rte_eth_dev_filter_ctrl(port_id, RTE_ETH_FILTER_FDIR, > - RTE_ETH_FILTER_STATS, &fdir_stat); > + if (get_fdir_info(port_id, &fdir_info, &fdir_stat)) > + return; > + > printf("\n %s FDIR infos for port %-2d %s\n", > fdir_stats_border, port_id, fdir_stats_border); > printf(" MODE: "); > -- > 2.17.1