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 90E04A00BE; Wed, 8 Jul 2020 05:32:30 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 76A7C1DDF1; Wed, 8 Jul 2020 05:32:30 +0200 (CEST) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 527241DD46 for ; Wed, 8 Jul 2020 05:32:28 +0200 (CEST) IronPort-SDR: Y6NO5AM2LFdUnfOe4epmxkBxkQmYPS4d/GVMtNJae0v3i/riTcnj9xCcvtZnr1YOpiuxp9/s7N FreQmK9Lm51g== X-IronPort-AV: E=McAfee;i="6000,8403,9675"; a="165805293" X-IronPort-AV: E=Sophos;i="5.75,326,1589266800"; d="scan'208";a="165805293" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jul 2020 20:32:27 -0700 IronPort-SDR: pv8w3792zdN9Nbv55lO+ZQY9ZEB7RFIcB4+F3MYYs6I/yLoaaX6cweKEbN7aZikMc42YH0w8CJ YRemiWD7mZww== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,326,1589266800"; d="scan'208";a="388699808" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by fmsmga001.fm.intel.com with ESMTP; 07 Jul 2020 20:32:27 -0700 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 7 Jul 2020 20:32:26 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.177) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 7 Jul 2020 20:32:26 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Vl8d9pENYIrbstFhJ5TJWENtumNLZCccyTGkTkfKVyGArvFBT95iQusH/O/urNoVJgTPguWJpobP97pBBtq6DWheiOeuH8zFYkB/SJe1zn3ShkJf1LTKjauNe/HYr7Ju8OpJ6isLnwI6K3xTLTKaf3i9xh/8oDwPTPmIR+bY32a6sHPAWWBeRI/8ayea8T/z1i3HVWrCMxlj69DhwmN0tqhYxQFvkgtTlMETSnOCC3cFm2ze3YcmMT8XS5qcS6qSLVYrj1sg6x3WPcjSKta2NNdeeW5xOefmDkHOiL1Em+vWxEHgxq7YfxgUbJ3klrQ2IqEp0N4tUGL4pOhsVErUiA== 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=Ftp1va1N7fBIC5M2/YD01MrypnoFAsmw+rd8zCdFx8g=; b=mecg7fqTvEgWl6CKK+GLdLovwMBx+1wtAbCjLr4pb8oprOpa9CcU+EMHjZuDYbnsQD4VJ6NgPts53JZIyLEUFU4w0EF4iw8a1eoe4qa0I+5HrxB9CRUQUMQJdF6dgpyTjthDKhaz/1y643c2jf42OJyEbnbPPQ+xUk4HxIN9EOHdLSx9UUUqdfZiPYabFsRn90HMK33hzQhb2Mm+ARqXnUzHgZ+A5CkGX7ZQkWWa7npVARAuYI5/PPhhfWsP7SI16oGo7ZanO45JfeB8lUg9CM9WXUaJ1O/k6T8DSDhnIOsIorxt8OuC7QTrv8fHIMM4C9grkNhTLdPSCATC5BIf1Q== 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=Ftp1va1N7fBIC5M2/YD01MrypnoFAsmw+rd8zCdFx8g=; b=SMjd29PmaHTgM+yBbG2ZRVyXNANcqXWEHhECW2OiSZ6b3lL1+V3bprARMzPWa/nup3kBUuvNGMMY+JYDGPDty0sjnJyO0+kYbCa3Hctn2yGI4zx1QMK1oQNv49i+5Dkkn1XyIqFbFl7pHHTWQrzfYCvCzX9QgLMEdW48/hQE4k0= 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:32:23 +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:32:23 +0000 From: "Yang, Qiming" To: "Di, ChenxuX" , "dev@dpdk.org" Thread-Topic: [PATCH v4 5/5] app/testpmd: support query RSS config in flow query Thread-Index: AQHWVMhbndSAJpl0z0+sc2t1QRjtMqj9BxzQ Date: Wed, 8 Jul 2020 03:32:23 +0000 Message-ID: References: <20200611060142.75465-1-chenxux.di@intel.com> <20200708011841.22295-1-chenxux.di@intel.com> <20200708011841.22295-6-chenxux.di@intel.com> In-Reply-To: <20200708011841.22295-6-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: df7471c8-0374-488e-05e1-08d822ef8761 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:608; x-forefront-prvs: 04583CED1A x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 8FTq/TKT7VVrmkK0vSHRz9cpQr7rfHp8aeZb62dNNpI68Z5hiJCBAKj3dDeXkdhIEZA2nn9+KlVtsDr/Gf9c+6jS1YKYX/RTQMqV9YroFkTpkFcgHrv6osvFw0nbJ0lq68i17s2Y/a7Q0Svr3G6u8s5mAlKMU04LXfELr5pJlWvGKaVVLhwVdGPc25u//GbVsy6gN3/tOLGZZQ3OBVoP/4mpL/d/hn3FiRmkzwBs3whnvwcfxoYTTx6zoKjhsRfSiEdnUep47mIctoITuaUGZNSi7Gd7cKo0HwvqD4R6NLW6McERw6iaNqq/nsXr2R5A 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: Q11jgW4kYFqJlR2hryfz1vhU61ffe7JSOobVE+T/hYAx1rGLzEPIU1ZxOh26GEVHVBMd0cuMDLuau4elnB6vrZpjxuDHqYX2ZCTSTM22/1rqo3L31Svy94wN/YClmwnjY3tCUH5o2HkL1/nI8VrzIvyYOZVJ1BE6/giJ+I+5UjE2LYpXNii15ieQ2e83FCTA2ohugycAAoF5lvwcuC6QZn5GcEG+0L/N93+VXaQdCeIM/Q0thHWa3JUBE4KfOdG1p0VNTTFryHqB+680YQMVHNeJADitO64Qpnh2NHTmCbfLKp/Tb543c2gcZaJ1/FcqdAXk5jrKhF5AvtuvZwPUBGHi+ThsaYKKqjssFxZkCbYxSrtjGitK84WsIzMEmfDlys3MWetcmL4JhXjz7jp1+z54F40Ob5ma0nlzqW3pykyZX5VibR1aahP0DfweKdyCi873QpIU25XN1M0Z7Ar3dPfUy0k9TcEiBmYv+ie/EtZVBVRPBK0XO9GyaKbLG/u2 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: df7471c8-0374-488e-05e1-08d822ef8761 X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jul 2020 03:32:23.4127 (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: QjZLmHPzCmcLUQD40aBfjVllMJVkoNvL8PbggfRCMCURFMhMA6ioG4O93Aj4EyedHR5eqpqLAIPmw0/bfiwByQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR11MB2611 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v4 5/5] app/testpmd: support query RSS config in flow query 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" Acke-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 5/5] app/testpmd: support query RSS config in flow que= ry >=20 > This patch support RSS action in flow query. > It can display the RSS configuration of the specified rule. >=20 > For example: > we can create an RSS rule by command "flow create 0 ingress pattern eth / > ipv4 / tcp / end actions rss types ipv4-tcp l3-src-only l4-dst-only end q= ueues > end func symmetric_toeplitz / end" and then query it "flow query 0 0 rss= " > the log will be follow > RSS: > queues: none > function: symmetric_toeplitz > types: > ipv4-tcp > l3-src-only > l4-dst-only >=20 > Signed-off-by: Chenxu Di > --- > app/test-pmd/config.c | 55 > +++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 55 insertions(+) >=20 > diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index > cf14b584f..53a9b97d6 100644 > --- a/app/test-pmd/config.c > +++ b/app/test-pmd/config.c > @@ -1395,6 +1395,56 @@ port_flow_complain(struct rte_flow_error *error) > return -err; > } >=20 > +static void > +rss_config_display(struct rte_flow_action_rss *rss_conf) { > + uint8_t i; > + > + if (rss_conf =3D=3D NULL) { > + printf("Invalid rule\n"); > + return; > + } > + > + printf("RSS:\n" > + " queues: "); > + if (rss_conf->queue_num =3D=3D 0) > + printf("none\n"); > + for (i =3D 0; i < rss_conf->queue_num; i++) > + printf("%d\n", rss_conf->queue[i]); > + > + printf(" function: "); > + switch (rss_conf->func) { > + case RTE_ETH_HASH_FUNCTION_DEFAULT: > + printf("default\n"); > + break; > + case RTE_ETH_HASH_FUNCTION_TOEPLITZ: > + printf("toeplitz\n"); > + break; > + case RTE_ETH_HASH_FUNCTION_SIMPLE_XOR: > + printf("simple_xor\n"); > + break; > + case RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ: > + printf("symmetric_toeplitz\n"); > + break; > + default: > + printf("Unknown function\n"); > + return; > + } > + > + printf(" types:\n"); > + if (rss_conf->types =3D=3D 0) { > + printf(" none\n"); > + return; > + } > + for (i =3D 0; rss_type_table[i].str; i++) { > + if ((rss_conf->types & > + rss_type_table[i].rss_type) =3D=3D > + rss_type_table[i].rss_type && > + rss_type_table[i].rss_type !=3D 0) > + printf(" %s\n", rss_type_table[i].str); > + } > +} > + > /** Validate flow rule. */ > int > port_flow_validate(portid_t port_id, > @@ -1581,6 +1631,7 @@ port_flow_query(portid_t port_id, uint32_t rule, > const char *name; > union { > struct rte_flow_query_count count; > + struct rte_flow_action_rss rss_conf; > } query; > int ret; >=20 > @@ -1602,6 +1653,7 @@ port_flow_query(portid_t port_id, uint32_t rule, > return port_flow_complain(&error); > switch (action->type) { > case RTE_FLOW_ACTION_TYPE_COUNT: > + case RTE_FLOW_ACTION_TYPE_RSS: > break; > default: > printf("Cannot query action type %d (%s)\n", @@ -1626,6 > +1678,9 @@ port_flow_query(portid_t port_id, uint32_t rule, > query.count.hits, > query.count.bytes); > break; > + case RTE_FLOW_ACTION_TYPE_RSS: > + rss_config_display(&query.rss_conf); > + break; > default: > printf("Cannot display result for action type %d (%s)\n", > action->type, name); > -- > 2.17.1