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 3890DA04B5; Thu, 10 Sep 2020 11:29:58 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0F8B71C0D1; Thu, 10 Sep 2020 11:29:39 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 3E3A81C0CA for ; Thu, 10 Sep 2020 11:29:37 +0200 (CEST) IronPort-SDR: 39nOeYJrVeCMS3LmW++ZhPhqobt5ksPJRx1T3gSC91R+GvrC5+pkxBtDWKzZ3wLnjh+F5d76zU tcXFpsLna8QA== X-IronPort-AV: E=McAfee;i="6000,8403,9739"; a="138531893" X-IronPort-AV: E=Sophos;i="5.76,412,1592895600"; d="scan'208";a="138531893" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Sep 2020 02:29:36 -0700 IronPort-SDR: qduFuJl+85L/o21kEyh0CaVUGjFP6PJA91ABX0oKFYvAcfidGUpct1WIFoY8Tp1gTfDhIc0rBd 76jjuCwJPPHg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.76,412,1592895600"; d="scan'208";a="449530979" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga004.jf.intel.com with ESMTP; 10 Sep 2020 02:29:35 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Thu, 10 Sep 2020 02:29:35 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Thu, 10 Sep 2020 02:29:35 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Thu, 10 Sep 2020 02:29:34 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.168) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Thu, 10 Sep 2020 02:29:33 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nK8XuK439X32Me+E3WECQ1DmF9lXX2MCtzV/DpEc146W967HnTT04nWc703j9I83a7GipiKy4t+cPKT8wNCCclJlOh9OvPnSXrrUlM7Eywp9RZS5puS4cqMipJbYB9KivZfWsn9GXwUBVLyQ/F/yExaiGateJx4akdmiP9VvB2HzO0U0LMjZTo0ZE+nRwYIAPzzTIS/pd2/TDcDaynKg0dUsLivkk25iEb25bnfL6e3/6UF70IS69XN5WDzfj/ryNNLqNdCn4pN9wuh3EgDeeTpGj8N0ZUM5O7hXbxTyTUczjvo6giwEUK1EF1Dh0l7YASGIFPGL6ar+fZrv98UuOQ== 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=lKNDAZZiQHt95YFOUKTM+drpjwgXLXhIg822oQpnZns=; b=B5BoVjgYVRViZCBrIF4Tymyo/ozK7QkFmP3qRqBds9CdsNBcF86STrZhQdKY+kccaPui8l8ItUrPyrCkV/w4Eu9UsLU0qJGEmnhVN9Ium9tRELBEEnJVvfZSGFr0NsJvyAJW7VgtU6ibpiyw1Qunz6riC655VjLwOlotMevyNO6jWka0i8HkNFxtEPVQTs0iQmsqhNruwWOLUqMn/y/5fGjGViBde0REs6s0/+WOrsjeqgyUvm+imzAntU8MKx0nN2ANV4iFVJDu/g3px4I5bL3oBjomWntN7zsWLthkrfvTS3Yb/TU205Oba2D4pX9hq4AYfoF/vP0hVoGiZO1ygA== 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=lKNDAZZiQHt95YFOUKTM+drpjwgXLXhIg822oQpnZns=; b=xCP4wcYsmt/azG8bncAUDSUwph3JxAOSP+dp7YQ4urk/4fFAVHkHcfDQ6/7MnStv120PGK7XMnmcdQ60OvZ0z6cKtW1SbkSJ4Evm7njXplo0Fs00U4vfXjA1koJDWa9GTo00NNhXsYQPzVKHiSwniDnCCuw9zGpHlimGFhjZw3k= Received: from BN6PR11MB3890.namprd11.prod.outlook.com (2603:10b6:405:7a::20) by BN6PR11MB4100.namprd11.prod.outlook.com (2603:10b6:405:7a::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3370.16; Thu, 10 Sep 2020 09:29:28 +0000 Received: from BN6PR11MB3890.namprd11.prod.outlook.com ([fe80::1c71:1c6b:3813:2044]) by BN6PR11MB3890.namprd11.prod.outlook.com ([fe80::1c71:1c6b:3813:2044%4]) with mapi id 15.20.3348.017; Thu, 10 Sep 2020 09:29:28 +0000 From: "Zhang, AlvinX" To: "Guo, Jia" , "Zhang, Qi Z" CC: "dev@dpdk.org" Thread-Topic: [PATCH v4 2/2] net/iavf: support outer IP hash for GTPC Thread-Index: AQHWhyTZZix0R/adBk2IfaKIzAr6GqlhVB0AgABGRfA= Date: Thu, 10 Sep 2020 09:29:28 +0000 Message-ID: References: <20200908095015.23708-1-alvinx.zhang@intel.com> <20200910033652.30632-1-alvinx.zhang@intel.com> <20200910033652.30632-2-alvinx.zhang@intel.com> <19133970cdf64d5882531d3933bac5af@intel.com> In-Reply-To: <19133970cdf64d5882531d3933bac5af@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.37] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 785c19f0-98f1-4550-0344-08d8556c0431 x-ms-traffictypediagnostic: BN6PR11MB4100: 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:8882; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: fqrAsmHpVXxpUYUcNamZJSE8fxsnjgZQOiwG2FzU6dubiCekKJWpEUyAWpNr/rCWnLQeoIboX+r/7aq4jRa41VT1Qo8OC41ymeEyboQ7LedBmOJNDKvQobmA6wflydoapcFHDlRXry6/3B9g4gZAHDPTOSfmbFeELUfmZxi/MFp2+WGr2IinobB8sm4VHineBuW8EoT/gAaJGxvV34ty4Muade4wIdBGMoFNzG2lsb4LwwVLIJ0MlRwPq+y+JUtO/xsAVpizJFkTysDHC2PqXK9l4194nqK6bVnVqk0Lf1TyKZS3nCBh7VACDYi+vgaZ x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN6PR11MB3890.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(39860400002)(136003)(366004)(396003)(346002)(376002)(86362001)(76116006)(8676002)(186003)(7696005)(5660300002)(26005)(83380400001)(2906002)(4326008)(110136005)(71200400001)(316002)(66476007)(66946007)(55016002)(66556008)(64756008)(66446008)(478600001)(52536014)(53546011)(6506007)(6636002)(33656002)(9686003)(8936002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: GchNrASgRoT/dyGENpljwhfrP4gp5XeQotJkmSpXNsHmFwVlxElSmKnZBc+ACJaBpiiB/YTjx5OKbEYy7YUwp/wrCNJIsQTBsgd9lxMS6QkrBDYfVNOQmOZ4FEkoIioKT+7GdFbfxHcYlAqdomXOxmAWN0fRS4n4oYhaxzGHO+E1MVHuzCHoM3oHtv90BxCmXgByBxap+95s2EwcIgvieGxkKBZAASp2JXHwVO8aCDxw22LnmqroYtNY8zzqZ5VLJOon2yzcVS/FMtTjOTGAuJQRXA+19WXbdaMs4EObKu48FoIl1zLvrIrbP+TecBMoTkLChCV+4+MY23ht7lexN0oFsEe0Rk+7taSHzh/Xtd4d96KzBUKDB11UhuYx+EuI9I2louUFs4S0l9bpFP0X0P0RtLSwvFwhBmSwQH8AoZyxqifRZo9zZxO0i5F90ykJEr2dtDBHQqIwqXcB9gVLjGQzGONaoLcWDSAJHBnUTz4FnfSEJNpKelAHUlGHE/NHVQnWbUc1IZDLfYXSxvGdtVPkOCiab6uVv9ohjBh1w2qYFRojiU+iM+OOm6kXnj5NSfzz7V3Ku0fpQnB5Fvle4I9HnSJUc0uG6araRKiomhrZHTrqWYhT70YzNIR354x+MBQSdTGc/EKVO0pDfAr6Ow== 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: BN6PR11MB3890.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 785c19f0-98f1-4550-0344-08d8556c0431 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Sep 2020 09:29:28.6595 (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: nLhqNVf3yvzJFnE21o/rDI5cFDsw30vdwLS+cDeJWFXpRYt1vaB3nSNOOGOmSp3Ts4IOHscsPusxyUURe6ZibQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR11MB4100 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v4 2/2] net/iavf: support outer IP hash for GTPC 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" Thanks Guojia, > -----Original Message----- > From: Guo, Jia > Sent: Thursday, September 10, 2020 1:14 PM > To: Zhang, AlvinX ; Zhang, Qi Z > > Cc: dev@dpdk.org > Subject: RE: [PATCH v4 2/2] net/iavf: support outer IP hash for GTPC >=20 > Hi, Alvin >=20 > > -----Original Message----- > > From: Zhang, AlvinX > > Sent: Thursday, September 10, 2020 11:37 AM > > To: Guo, Jia ; Zhang, Qi Z > > Cc: dev@dpdk.org; Zhang, AlvinX > > Subject: [PATCH v4 2/2] net/iavf: support outer IP hash for GTPC > > > > From: Alvin Zhang > > > > Add patterns and headers for GTPC, now outer IP hash can be configured > > as input sets for GTPC packet. > > > > Signed-off-by: Alvin Zhang > > --- > > > > V2: Modify codes according to comments. > > V3: Refact all codes. > > V4: Fix compatibility issues. > > > > drivers/net/iavf/iavf_generic_flow.c | 18 ++++++++++++++++++ > > drivers/net/iavf/iavf_generic_flow.h | 6 ++++++ > > drivers/net/iavf/iavf_hash.c | 13 +++++++++++++ > > 3 files changed, 37 insertions(+) > > > > diff --git a/drivers/net/iavf/iavf_generic_flow.c > > b/drivers/net/iavf/iavf_generic_flow.c > > index 321a4dc..00e7f15 100644 > > --- a/drivers/net/iavf/iavf_generic_flow.c > > +++ b/drivers/net/iavf/iavf_generic_flow.c > > @@ -315,6 +315,15 @@ enum rte_flow_item_type > > iavf_pattern_eth_qinq_ipv6_icmp6[] =3D { RTE_FLOW_ITEM_TYPE_END, }; > > > > +/* IPv4 GTPC */ > > +enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpc[] =3D { > > +RTE_FLOW_ITEM_TYPE_ETH, RTE_FLOW_ITEM_TYPE_IPV4, > > +RTE_FLOW_ITEM_TYPE_UDP, RTE_FLOW_ITEM_TYPE_GTPC, > > +RTE_FLOW_ITEM_TYPE_END, }; > > + > > /* IPV4 GTPU (EH) */ > > enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu[] =3D { > > RTE_FLOW_ITEM_TYPE_ETH, @@ -333,6 +342,15 @@ enum > rte_flow_item_type > > iavf_pattern_eth_ipv4_gtpu_eh[] =3D { RTE_FLOW_ITEM_TYPE_END, }; > > > > +/* IPv6 GTPC */ > > +enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpc[] =3D { > > +RTE_FLOW_ITEM_TYPE_ETH, RTE_FLOW_ITEM_TYPE_IPV6, > > +RTE_FLOW_ITEM_TYPE_UDP, RTE_FLOW_ITEM_TYPE_GTPC, > > +RTE_FLOW_ITEM_TYPE_END, }; > > + > > /* IPV6 GTPU (EH) */ > > enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu[] =3D { > > RTE_FLOW_ITEM_TYPE_ETH, diff --git > > a/drivers/net/iavf/iavf_generic_flow.h > > b/drivers/net/iavf/iavf_generic_flow.h > > index f365cc3..dbc7294 100644 > > --- a/drivers/net/iavf/iavf_generic_flow.h > > +++ b/drivers/net/iavf/iavf_generic_flow.h > > @@ -182,10 +182,16 @@ > > extern enum rte_flow_item_type iavf_pattern_eth_vlan_ipv6_icmp6[]; > > extern enum rte_flow_item_type iavf_pattern_eth_qinq_ipv6_icmp6[]; > > > > +/* IPv4 GTPC */ > > +extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpc[]; > > + > > /* IPv4 GTPU (EH) */ > > extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu[]; extern > > enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh[]; > > > > +/* IPv4 GTPC */ >=20 > /* IPv6 GTPC */ >=20 > > +extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpc[]; > > + > > /* IPv6 GTPU (EH) */ > > extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu[]; extern > > enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh[]; diff --git > > a/drivers/net/iavf/iavf_hash.c b/drivers/net/iavf/iavf_hash.c index > > d0f0057..4e8ee5c 100644 > > --- a/drivers/net/iavf/iavf_hash.c > > +++ b/drivers/net/iavf/iavf_hash.c > > @@ -135,6 +135,9 @@ struct iavf_hash_flow_cfg { #define > > proto_hdr_gtpu { \ VIRTCHNL_PROTO_HDR_GTPU_IP, 0, {BUFF_NOUSED} } > > > > +#define proto_hdr_gtpc { \ > > +VIRTCHNL_PROTO_HDR_GTPC, 0, {BUFF_NOUSED} } > > + > > #define TUNNEL_LEVEL_OUTER0 > > #define TUNNEL_LEVEL_INNER1 > > > > @@ -267,6 +270,14 @@ struct virtchnl_proto_hdrs > > outer_ipv6_udp_gtpu_tmplt =3D { TUNNEL_LEVEL_OUTER, 3, {proto_hdr_ipv6= , > > proto_hdr_udp, proto_hdr_gtpu} }; > > > > +struct virtchnl_proto_hdrs ipv4_udp_gtpc_tmplt =3D { > > +TUNNEL_LEVEL_OUTER, 3, {proto_hdr_ipv4, proto_hdr_udp, > > proto_hdr_gtpc} > > +}; > > + > > +struct virtchnl_proto_hdrs ipv6_udp_gtpc_tmplt =3D { > > +TUNNEL_LEVEL_OUTER, 3, {proto_hdr_ipv6, proto_hdr_udp, > > proto_hdr_gtpc} > > +}; > > + > > /* rss type super set */ > > > > /* IPv4 outer */ > > @@ -377,6 +388,7 @@ struct virtchnl_proto_hdrs > > outer_ipv6_udp_gtpu_tmplt =3D { {iavf_pattern_eth_ipv4_ah, > > IAVF_RSS_TYPE_IPV4_AH,&ipv4_ah_tmplt}, > > {iavf_pattern_eth_ipv4_l2tpv3, > > IAVF_RSS_TYPE_IPV4_L2TPV3,&ipv4_l2tpv3_tmplt}, > > {iavf_pattern_eth_ipv4_pfcp, > > IAVF_RSS_TYPE_IPV4_PFCP,&ipv4_pfcp_tmplt}, > > +{iavf_pattern_eth_ipv4_gtpc,ETH_RSS_IPV4, >=20 > Since the input set hint is the supper set, so I suppose you use the supp= er set > "ETH_RSS_IPV4 | ETH_RSS_GTPC" here, and considerate if we need to enable > GTPC hash at this patch, if not it could be process when parsing pattern= . Want > to know other's opinion. In V1 patch I have put TEID field as input set, but the kernel driver did n= ot supported this field and returned success. That's mean if user really set ETH_RSS_GTPC as input set, the rule will be = created succeed, but it don't work >=20 > > &ipv4_udp_gtpc_tmplt}, > > /* IPv6 */ > > {iavf_pattern_eth_ipv6, > > IAVF_RSS_TYPE_OUTER_IPV6,&outer_ipv6_tmplt}, > > {iavf_pattern_eth_ipv6_udp, > > IAVF_RSS_TYPE_OUTER_IPV6_UDP,&outer_ipv6_udp_tmplt}, > > @@ -404,6 +416,7 @@ struct virtchnl_proto_hdrs > > outer_ipv6_udp_gtpu_tmplt =3D { {iavf_pattern_eth_ipv6_ah, > > IAVF_RSS_TYPE_IPV6_AH,&ipv6_ah_tmplt}, > > {iavf_pattern_eth_ipv6_l2tpv3, > > IAVF_RSS_TYPE_IPV6_L2TPV3,&ipv6_l2tpv3_tmplt}, > > {iavf_pattern_eth_ipv6_pfcp, > > IAVF_RSS_TYPE_IPV6_PFCP,&ipv6_pfcp_tmplt}, > > +{iavf_pattern_eth_ipv6_gtpc,ETH_RSS_IPV6, > > &ipv6_udp_gtpc_tmplt}, > > }; > > > > struct virtchnl_proto_hdrs *iavf_hash_default_hdrs[] =3D { > > -- > > 1.8.3.1 >=20