From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id EE7A22C47 for ; Sun, 20 Mar 2016 09:57:03 +0100 (CET) Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga104.fm.intel.com with ESMTP; 20 Mar 2016 01:57:03 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.24,364,1455004800"; d="scan'208";a="69820952" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by fmsmga004.fm.intel.com with ESMTP; 20 Mar 2016 01:57:02 -0700 Received: from fmsmsx113.amr.corp.intel.com (10.18.116.7) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.248.2; Sun, 20 Mar 2016 01:57:02 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by FMSMSX113.amr.corp.intel.com (10.18.116.7) with Microsoft SMTP Server (TLS) id 14.3.248.2; Sun, 20 Mar 2016 01:57:02 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.132]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.24]) with mapi id 14.03.0248.002; Sun, 20 Mar 2016 16:56:54 +0800 From: "Wu, Jingjing" To: Thomas Monjalon CC: "dev@dpdk.org" , "Richardson, Bruce" Thread-Topic: [dpdk-dev] [PATCH v4 07/12] librte_ether: extend flow director struct Thread-Index: AQHRenyYtt55rFdjL0WSvv78wdQ5Rp9em/KAgAN4juA= Date: Sun, 20 Mar 2016 08:56:54 +0000 Message-ID: <9BB6961774997848B5B42BEC655768F8DD9E28@SHSMSX104.ccr.corp.intel.com> References: <1457502180-14124-1-git-send-email-jingjing.wu@intel.com> <1457580346-18550-1-git-send-email-jingjing.wu@intel.com> <1457580346-18550-8-git-send-email-jingjing.wu@intel.com> <21476039.orzeTHEBVW@xps13> In-Reply-To: <21476039.orzeTHEBVW@xps13> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiODczOTBjZjYtNWMxZC00Zjg0LWE3YzEtNmZlODVjMjM0NDdhIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6IlByeG1aeWpnN3RZMmt0d1FKcGYySzExaUxpcFQ0NXJFa1JKNUlyZ1JrbGs9In0= x-ctpclassification: CTP_IC x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v4 07/12] librte_ether: extend flow director struct 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: Sun, 20 Mar 2016 08:57:04 -0000 Hi, Thomas > -----Original Message----- > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > Sent: Friday, March 18, 2016 7:44 PM > To: Wu, Jingjing > Cc: dev@dpdk.org; Richardson, Bruce > Subject: Re: [dpdk-dev] [PATCH v4 07/12] librte_ether: extend flow direct= or struct >=20 > Hi Jingjing, >=20 > 2016-03-10 11:25, Jingjing Wu: > > This patch changed rte_eth_fdir_flow from union to struct to > > support more packets formats, for example, Vxlan and GRE tunnel > > packets with IP inner frame. >=20 > I think we need a lot more explanations about how it should work. > From this point we should collect some acknowledgements from the > maintainers of other drivers having this kind of flow steering need. > Maybe that a better API, more generic, is possible. >=20 > > This patch also add new RTE_FDIR_TUNNEL_TYPE_GRE enum. >=20 > OK to add GRE to the existing API. >=20 > > Signed-off-by: Jingjing Wu > > Acked-by: Helin Zhang > [...] > > /** > > - * An union contains the inputs for all types of flow > > + * A struct contains the inputs for all types of flow > > */ > > -union rte_eth_fdir_flow { > > - struct rte_eth_l2_flow l2_flow; > > - struct rte_eth_udpv4_flow udp4_flow; > > - struct rte_eth_tcpv4_flow tcp4_flow; > > - struct rte_eth_sctpv4_flow sctp4_flow; > > - struct rte_eth_ipv4_flow ip4_flow; > > - struct rte_eth_udpv6_flow udp6_flow; > > - struct rte_eth_tcpv6_flow tcp6_flow; > > - struct rte_eth_sctpv6_flow sctp6_flow; > > - struct rte_eth_ipv6_flow ipv6_flow; > > +struct rte_eth_fdir_flow { > > + union { > > + struct rte_eth_l2_flow l2_flow; > > + struct rte_eth_udpv4_flow udp4_flow; > > + struct rte_eth_tcpv4_flow tcp4_flow; > > + struct rte_eth_sctpv4_flow sctp4_flow; > > + struct rte_eth_ipv4_flow ip4_flow; > > + struct rte_eth_udpv6_flow udp6_flow; > > + struct rte_eth_tcpv6_flow tcp6_flow; > > + struct rte_eth_sctpv6_flow sctp6_flow; > > + struct rte_eth_ipv6_flow ipv6_flow; > > + }; > > struct rte_eth_mac_vlan_flow mac_vlan_flow; > > struct rte_eth_tunnel_flow tunnel_flow; > > }; >=20 > Please explain somewhere how to use this API change in order to have more > discussions with other maintainers. >=20 > I'm sorry to comment this change only now. I took time to realize that > we need more consensus about the filtering API to make it usable by > more drivers. > > For the 16.04 release, I suggest to remove this change from the series. > Thanks for your understanding. OK. Understand that we need to comments more on the change. And as you know= , the whole patch set actually contains two changes on filter API: One the = change is in this patch, which adds tunnel filtering using flow director, a= nother one is the patch "[PATCH v4,05/12] i40e: extend flow director to fil= ter by IP " (http://www.dpdk.org/dev/patchwork/patch/11358/ ). If you are O= K to the latter one, I will send another version which just contains the ch= ange and drops tunnel supporting in 16.04 release. And let's discuss more on the filtering API in future. Thanks Jingjing