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 E32F2A2E1B for ; Wed, 4 Sep 2019 20:29:09 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id CCF9D1E9B9; Wed, 4 Sep 2019 20:29:08 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 5A4D31E901 for ; Wed, 4 Sep 2019 20:29:07 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Sep 2019 11:29:05 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,467,1559545200"; d="scan'208";a="358189686" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by orsmga005.jf.intel.com with ESMTP; 04 Sep 2019 11:29:05 -0700 Received: from fmsmsx153.amr.corp.intel.com (10.18.125.6) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 4 Sep 2019 11:29:04 -0700 Received: from fmsmsx120.amr.corp.intel.com ([169.254.15.122]) by FMSMSX153.amr.corp.intel.com ([169.254.9.165]) with mapi id 14.03.0439.000; Wed, 4 Sep 2019 11:29:04 -0700 From: "Stillwell Jr, Paul M" To: "Wang, Ying A" , "Zhang, Qi Z" CC: "Ye, Xiaolong" , "Yang, Qiming" , "dev@dpdk.org" , "Wang, Ying A" , "Zhao1, Wei" Thread-Topic: [dpdk-dev] [PATCH 1/4] net/ice: add devargs to control pipeline mode Thread-Index: AQHVYutABnFLuaDcSEqRLe84LcUtxKcb1tPg Date: Wed, 4 Sep 2019 18:29:03 +0000 Message-ID: References: <20190903221522.151382-1-ying.a.wang@intel.com> <20190903221522.151382-2-ying.a.wang@intel.com> In-Reply-To: <20190903221522.151382-2-ying.a.wang@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ctpclassification: CTP_NT x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiYzlkYzBmMWEtNGM1MC00NTk0LWE2NmMtMGExZWIzOWVhYjljIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoid3NXZlJ1TFRBWU14MzM3cFwvNDlIWlQ3ZTNBNExQU2lTcmpYRTRVZ2tqa1dCXC9FNmZJXC9pbU54aDhiYkRGQ0ZqTyJ9 dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action x-originating-ip: [10.1.200.108] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH 1/4] net/ice: add devargs to control pipeline mode 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" > -----Original Message----- > From: dev On Behalf Of Ying Wang > Sent: Tuesday, September 3, 2019 3:15 PM > To: Zhang, Qi Z > Cc: Ye, Xiaolong ; Yang, Qiming > ; dev@dpdk.org; Wang, Ying A > ; Zhao1, Wei > Subject: [dpdk-dev] [PATCH 1/4] net/ice: add devargs to control pipeline > mode >=20 > From: Qiming Yang >=20 > Added a devarg to control the mode in generic flow API. > We use none-pipeline mode by default. >=20 > Signed-off-by: Qiming Yang > --- > doc/guides/nics/ice.rst | 11 +++++++++++ > drivers/net/ice/ice_ethdev.c | 16 +++++++++++++++- > drivers/net/ice/ice_ethdev.h | 1 + > 3 files changed, 27 insertions(+), 1 deletion(-) >=20 > diff --git a/doc/guides/nics/ice.rst b/doc/guides/nics/ice.rst index > 03819d29f..a8429a535 100644 > --- a/doc/guides/nics/ice.rst > +++ b/doc/guides/nics/ice.rst > @@ -61,6 +61,17 @@ Runtime Config Options > NOTE: In Safe mode, only very limited features are available, features= like > RSS, > checksum, fdir, tunneling ... are all disabled. >=20 > +- ``Generic Flow Pipeline Mode Support`` (default ``0``) > + > + In pipeline mode, a flow can be setted at one specific stage by setted =3D> set > + setting parameter ``priority``. Currently, we support two stages, > + priority 0 for permission and 1 for distributor. For none-pipeline none-pipeline =3D> non-pipeline > + mode, all flows are assumed to be at the same pipeline stage, > + priority is ignored. Default, generic flow API is enabled in none none =3D> non > + pipeline mode, user can choose to use pipeline mode by set ``devargs`` > parameter ``pipeline-mode-support``, for example:: > + > + -w 80:00.0, pipleline-mode-support=3D1 > + > Driver compilation and testing > ------------------------------ >=20 > diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c > index 9aa7506ba..4e0645db1 100644 > --- a/drivers/net/ice/ice_ethdev.c > +++ b/drivers/net/ice/ice_ethdev.c > @@ -19,9 +19,11 @@ >=20 > /* devargs */ > #define ICE_SAFE_MODE_SUPPORT_ARG "safe-mode-support" > +#define ICE_PIPELINE_MODE_SUPPORT_ARG "pipeline-mode-support" >=20 > static const char * const ice_valid_args[] =3D { > ICE_SAFE_MODE_SUPPORT_ARG, > + ICE_PIPELINE_MODE_SUPPORT_ARG, > NULL > }; >=20 > @@ -1510,7 +1512,18 @@ static int ice_parse_devargs(struct rte_eth_dev > *dev) >=20 > ret =3D rte_kvargs_process(kvlist, ICE_SAFE_MODE_SUPPORT_ARG, > &parse_bool, &ad- > >devargs.safe_mode_support); > + if (ret) > + goto err_devargs; > + > + ret =3D rte_kvargs_process(kvlist, > ICE_PIPELINE_MODE_SUPPORT_ARG, > + &parse_bool, &ad- > >devargs.pipeline_mode_support); > + if (ret) > + goto err_devargs; > + > + rte_kvargs_free(kvlist); > + return ret; >=20 > +err_devargs: > rte_kvargs_free(kvlist); > return ret; > } > @@ -3925,7 +3938,8 @@ RTE_PMD_REGISTER_PCI(net_ice, rte_ice_pmd); > RTE_PMD_REGISTER_PCI_TABLE(net_ice, pci_id_ice_map); > RTE_PMD_REGISTER_KMOD_DEP(net_ice, "* igb_uio | uio_pci_generic | > vfio-pci"); RTE_PMD_REGISTER_PARAM_STRING(net_ice, > - ICE_SAFE_MODE_SUPPORT_ARG "=3D<0|1>"); > + ICE_SAFE_MODE_SUPPORT_ARG "=3D<0|1>" > + ICE_PIPELINE_MODE_SUPPORT_ARG "=3D<0|1>"); >=20 > RTE_INIT(ice_init_log) > { > diff --git a/drivers/net/ice/ice_ethdev.h b/drivers/net/ice/ice_ethdev.h > index 926db23d2..9bf5de08d 100644 > --- a/drivers/net/ice/ice_ethdev.h > +++ b/drivers/net/ice/ice_ethdev.h > @@ -285,6 +285,7 @@ struct ice_pf { > */ > struct ice_devargs { > int safe_mode_support; > + int pipeline_mode_support; > }; >=20 > /** > -- > 2.15.1