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 A3E31A034F for ; Wed, 13 May 2020 14:18:08 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 835371D575; Wed, 13 May 2020 14:18:08 +0200 (CEST) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 317C92BA2; Wed, 13 May 2020 14:18:05 +0200 (CEST) IronPort-SDR: /a6Broy9epkxSeCjagv4C5FulXgWtWrMXQxyITeo01jPVi+X1rhusbF1wlq5MyZUJKeiDu9S+t L6WPwGi6jKMg== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 May 2020 05:18:04 -0700 IronPort-SDR: Q0lDonpC0BD28HxW5sJa6gDNvND2tVXOQ3WaO5+vWqSyLosPONU3LxJLQCwE3ZxFX+1L0TPsHe uiUC40kG2wsg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,387,1583222400"; d="scan'208";a="251234115" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by orsmga007.jf.intel.com with ESMTP; 13 May 2020 05:18:03 -0700 Received: from fmsmsx118.amr.corp.intel.com (10.18.116.18) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 13 May 2020 05:18:01 -0700 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by fmsmsx118.amr.corp.intel.com (10.18.116.18) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 13 May 2020 05:18:01 -0700 Received: from NAM02-BL2-obe.outbound.protection.outlook.com (104.47.38.51) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 13 May 2020 05:18:01 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fb66NJx0DWbXs3zisKBx2SODNshbK7UKq2GWLp8qy6iX2D9gDZIhY1fJFmMgzeXWwcd+ytdSHsuB48CfnShXKK6/zLyjNxwYqsICMv8lLN4BA32T1ucfA+YhxFudOK/egOL4CjlTmvNIRidDWup/M9qVv7M6n02N/P18FTCJgrKKgayqOnBmhLya3pBgtWYjIzwBn9+rVYInfsFIuIZ2YzCgsWithpT3BgRatqQgU54gVXEJyAsk0DcFDKOn6mwtJLfRGzIhNv+am4iJQjSiFp6EzxMUxsLGyFkR4xHcUT4VQ9EdJ/GqV6zBM79UAOaG42hKJBSxallB90reOwBsgg== 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=mbxWxwMGd8Cl0hk/fzMWfOPoGF6Kze839Do0FnKD44o=; b=AsxARGzAqkrVSi+/P7MXWqCKjWoZ2xiaqJe8yJRmWs4/++x1fJF9Ip1q4n+gDHKHhyMeDPpZzWMVHR0Y2uvVcO8tqVGIdOUDAVWILvdR6XDXxtUdF1olOAPNWRwTzPnZAwFtxI5Bg2Ely5DXO2wyl30Gu+x5/gA1rbdQwqeUjV+BoCu04oIwm0/+exwwjVEGmmQj7CJrff6dW+XUwD80ucaSHRCoNvVl2AmKJx7Gk++clpic3NjQzfZ40h+Fja+Ae3dy/Fm6vsSu4VVGIFNICw5gnGdgf3l3376s+UQSJXKqfj68crGND2p0GJ7pKlvYKPZnf7xvEz2XyTd6lkHhcQ== 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=mbxWxwMGd8Cl0hk/fzMWfOPoGF6Kze839Do0FnKD44o=; b=H1SRPfkMcjfS1/dkkgHujfjdTRD306y1TvJOEgu45c2//BEEJitbSVCAjvx6KscazZm6kN9ZQYbwOSuct5yQz/Dx1pnoTiFSLnc+v0pccYoOXipcPIO+REq/yqArOIqdr0sJVe/ghxJIHpdmrqgiI5qXNOvmt1LJrgwIu8GT3b8= Received: from BL0PR11MB3380.namprd11.prod.outlook.com (2603:10b6:208:69::12) by BL0PR11MB3124.namprd11.prod.outlook.com (2603:10b6:208:30::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3000.20; Wed, 13 May 2020 12:17:59 +0000 Received: from BL0PR11MB3380.namprd11.prod.outlook.com ([fe80::2c08:5b44:ebfd:6ea6]) by BL0PR11MB3380.namprd11.prod.outlook.com ([fe80::2c08:5b44:ebfd:6ea6%6]) with mapi id 15.20.3000.022; Wed, 13 May 2020 12:17:59 +0000 From: "Su, Simei" To: "Zhang, Qi Z" , "Yang, Qiming" CC: "dev@dpdk.org" , "Ye, Xiaolong" , "stable@dpdk.org" Thread-Topic: [PATCH] net/ice: fix RSS for GTPU Thread-Index: AQHWKR8x2ZnPBtYZiEeS+ISrfahza6il7LVw Date: Wed, 13 May 2020 12:17:58 +0000 Message-ID: References: <20200513121144.40566-1-qi.z.zhang@intel.com> In-Reply-To: <20200513121144.40566-1-qi.z.zhang@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.2.0.6 dlp-reaction: no-action dlp-product: dlpe-windows 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.55.52.211] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 01ef14dd-e1dd-4c44-3f5d-08d7f737acc5 x-ms-traffictypediagnostic: BL0PR11MB3124: 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:1388; x-forefront-prvs: 0402872DA1 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: x21CekxRyAZjqedXyewKxM8S5ZrvzS7RZUjuiru1k2PQaUWBP8YQsdCk2MWHcSdLsWXa9C+Cty2hlHGwFjDJCLjrYY7tcJC1KzRNOGGpt3JeXiLJLZR5QgaGnJLT18ggOl7anP4LSYF2yFPDU19anKgDT3uti92V23SWNXEV6c6S6oaOK4aJFTz/6IjASW9dxYu20hoOB/mcyYd3G4rnPY21vggPbTcWC7FhkCIWaPCZYLHBf63nwvaW6rTZUrMmT3qvbJIp1kKLGJwsiGKMj4mCHhv3xl8nszJ/u1SUn9zLXGwd1D8lXR5GEEXKidE3K1NkEaEcpmsROOvKwx9OcMqRQgiyjVJbCGbfvLo36SQCgnvKMH64tEJLZ5aYMaOemiJkAuioBDZ4gfJ8JWNZAgiMwPXV+4so0AkTkbZ8MxQ/MylQVuQdhccWKnv8OVgsAcRoMf+TraITXbPqKnfPXOOPDvjyJrBv3Pm9rpP8hU1UO7c4ZDHp33CzGMi0yRtxh+hUeZ0bhjh2dT3uhb0ePw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BL0PR11MB3380.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(366004)(39860400002)(346002)(136003)(396003)(376002)(33430700001)(54906003)(110136005)(52536014)(186003)(26005)(6506007)(53546011)(6636002)(71200400001)(7696005)(9686003)(55016002)(450100002)(4326008)(8936002)(33440700001)(478600001)(316002)(66476007)(66446008)(66556008)(64756008)(86362001)(8676002)(2906002)(76116006)(5660300002)(66946007)(33656002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: UkgLBB5y++/reJTI3ad0lwRhYGj97miSZ01ct8pHfWBioZ2DnR9sXkNc7dr1gPkZj+k/y8xnLQL2CZyhEg9JshO74H15TwjN/8ml6brAkFk6eyXG8y9GmXE13kOqEdlCJgkKKz32OuF7c0M6m7dk/SFNBdgDS5hqYxHk5gC/YH1vmd/cJgv00ebTDeSD1q4YPoPturPhxF2b8NehFvf+pC+ySghgRmeT5wcJJ9NpwHNBgb1tdCIHiSkD3EWZFRn2qC9x07SC2qY1H+yiPayPt7Uz8gH4cFGTVnSEbRqc8/GKnwFikmOWPvTT7hkbhtkCb4+wEr7c2H311h+PwR48TtdI49fcIhhXmNzP+LBWkER7+2Q2oqSiAidE4yhlGMwA/ADb4vN8GXPfnE/+1lkc+QGce0S+o32T8zKb+leegdsJpQUh5HoAln3tR7WtNNDG2QlrgAhvPiDv5itiQmzia9AZakPa9cXQVC/6K/0COtM= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 01ef14dd-e1dd-4c44-3f5d-08d7f737acc5 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 May 2020 12:17:58.8265 (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: QKye2gSI9fxqjlSlyM/oZ9TXzJnAgIk8bLTPdx54NKPflFCesRgP69Qsrt+XRpvlerWAZ7cb59YC2DJfrzMRIw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR11MB3124 X-OriginatorOrg: intel.com Subject: Re: [dpdk-stable] [PATCH] net/ice: fix RSS for GTPU X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Test-by Simei, Su > -----Original Message----- > From: Zhang, Qi Z > Sent: Wednesday, May 13, 2020 8:12 PM > To: Yang, Qiming > Cc: dev@dpdk.org; Su, Simei ; Ye, Xiaolong > ; Zhang, Qi Z ; > stable@dpdk.org > Subject: [PATCH] net/ice: fix RSS for GTPU >=20 > All supported pattern for GTPU include extend header: > pattern_eth_ipv4_gtpu_eh_ipv4 > pattern_eth_ipv4_gtpu_eh_ipv4_udp > pattern_eth_ipv4_gtpu_eh_ipv4_tcp >=20 > So the RSS rule should only take effect on GTPU packet that contains exte= nd > header. The patch fix above issue and also allow inner l4 port as input s= et. >=20 > Fixes: c08a72c79c7f ("net/ice: fix pattern name of GTPU with extension > header") > Cc: stable@dpdk.org >=20 > Signed-off-by: Qi Zhang > --- > drivers/net/ice/base/ice_flow.c | 42 > +++++++++++++++++++++++++++++------------ > drivers/net/ice/base/ice_flow.h | 1 + > drivers/net/ice/ice_hash.c | 10 +++++++--- > 3 files changed, 38 insertions(+), 15 deletions(-) >=20 > diff --git a/drivers/net/ice/base/ice_flow.c b/drivers/net/ice/base/ice_f= low.c > index c876377ed..fbb4ae009 100644 > --- a/drivers/net/ice/base/ice_flow.c > +++ b/drivers/net/ice/base/ice_flow.c > @@ -694,11 +694,41 @@ ice_flow_proc_seg_hdrs(struct > ice_flow_prof_params *params) > (const ice_bitmap_t *)ice_ptypes_ipv4_il; > ice_and_bitmap(params->ptypes, params->ptypes, src, > ICE_FLOW_PTYPE_MAX); > + if (hdrs & ICE_FLOW_SEG_HDR_UDP) { > + src =3D (const ice_bitmap_t *)ice_ptypes_udp_il; > + ice_and_bitmap(params->ptypes, > + params->ptypes, src, > + ICE_FLOW_PTYPE_MAX); > + } else if (hdrs & ICE_FLOW_SEG_HDR_TCP) { > + ice_and_bitmap(params->ptypes, params->ptypes, > + (const ice_bitmap_t *) > + ice_ptypes_tcp_il, > + ICE_FLOW_PTYPE_MAX); > + } else if (hdrs & ICE_FLOW_SEG_HDR_SCTP) { > + src =3D (const ice_bitmap_t *)ice_ptypes_sctp_il; > + ice_and_bitmap(params->ptypes, params->ptypes, > + src, ICE_FLOW_PTYPE_MAX); > + } > } else if (hdrs & ICE_FLOW_SEG_HDR_IPV6) { > src =3D !i ? (const ice_bitmap_t *)ice_ptypes_ipv6_ofos : > (const ice_bitmap_t *)ice_ptypes_ipv6_il; > ice_and_bitmap(params->ptypes, params->ptypes, src, > ICE_FLOW_PTYPE_MAX); > + if (hdrs & ICE_FLOW_SEG_HDR_UDP) { > + src =3D (const ice_bitmap_t *)ice_ptypes_udp_il; > + ice_and_bitmap(params->ptypes, > + params->ptypes, src, > + ICE_FLOW_PTYPE_MAX); > + } else if (hdrs & ICE_FLOW_SEG_HDR_TCP) { > + ice_and_bitmap(params->ptypes, params->ptypes, > + (const ice_bitmap_t *) > + ice_ptypes_tcp_il, > + ICE_FLOW_PTYPE_MAX); > + } else if (hdrs & ICE_FLOW_SEG_HDR_SCTP) { > + src =3D (const ice_bitmap_t *)ice_ptypes_sctp_il; > + ice_and_bitmap(params->ptypes, params->ptypes, > + src, ICE_FLOW_PTYPE_MAX); > + } > } >=20 > if (hdrs & ICE_FLOW_SEG_HDR_ICMP) { > @@ -706,18 +736,6 @@ ice_flow_proc_seg_hdrs(struct > ice_flow_prof_params *params) > (const ice_bitmap_t *)ice_ptypes_icmp_il; > ice_and_bitmap(params->ptypes, params->ptypes, src, > ICE_FLOW_PTYPE_MAX); > - } else if (hdrs & ICE_FLOW_SEG_HDR_UDP) { > - src =3D (const ice_bitmap_t *)ice_ptypes_udp_il; > - ice_and_bitmap(params->ptypes, params->ptypes, src, > - ICE_FLOW_PTYPE_MAX); > - } else if (hdrs & ICE_FLOW_SEG_HDR_TCP) { > - ice_and_bitmap(params->ptypes, params->ptypes, > - (const ice_bitmap_t *)ice_ptypes_tcp_il, > - ICE_FLOW_PTYPE_MAX); > - } else if (hdrs & ICE_FLOW_SEG_HDR_SCTP) { > - src =3D (const ice_bitmap_t *)ice_ptypes_sctp_il; > - ice_and_bitmap(params->ptypes, params->ptypes, src, > - ICE_FLOW_PTYPE_MAX); > } else if (hdrs & ICE_FLOW_SEG_HDR_GRE) { > if (!i) { > src =3D (const ice_bitmap_t *)ice_ptypes_gre_of; diff --git > a/drivers/net/ice/base/ice_flow.h b/drivers/net/ice/base/ice_flow.h index > 37f1c76ae..44e4bf79a 100644 > --- a/drivers/net/ice/base/ice_flow.h > +++ b/drivers/net/ice/base/ice_flow.h > @@ -160,6 +160,7 @@ enum ice_flow_seg_hdr { > * ICE_FLOW_SEG_HDR_GTPU_UP 1 1 > */ > #define ICE_FLOW_SEG_HDR_GTPU (ICE_FLOW_SEG_HDR_GTPU_IP | \ > + ICE_FLOW_SEG_HDR_GTPU_EH | \ > ICE_FLOW_SEG_HDR_GTPU_DWN | \ > ICE_FLOW_SEG_HDR_GTPU_UP) > #define ICE_FLOW_SEG_HDR_PFCP (ICE_FLOW_SEG_HDR_PFCP_NODE | \ diff > --git a/drivers/net/ice/ice_hash.c b/drivers/net/ice/ice_hash.c index > 72c8ddc9a..11435cbfb 100644 > --- a/drivers/net/ice/ice_hash.c > +++ b/drivers/net/ice/ice_hash.c > @@ -95,7 +95,7 @@ struct rss_type_match_hdr hint_7 =3D { struct > rss_type_match_hdr hint_8 =3D { > ICE_FLOW_SEG_HDR_IPV6 | ICE_FLOW_SEG_HDR_SCTP, > ETH_RSS_NONFRAG_IPV6_SCTP}; struct rss_type_match_hdr hint_9 =3D { > - ICE_FLOW_SEG_HDR_GTPU_IP, ETH_RSS_IPV4}; > + ICE_FLOW_SEG_HDR_GTPU_EH, ETH_RSS_IPV4}; > struct rss_type_match_hdr hint_10 =3D { > ICE_FLOW_SEG_HDR_PPPOE, ETH_RSS_IPV4}; > struct rss_type_match_hdr hint_11 =3D { > @@ -104,6 +104,10 @@ struct rss_type_match_hdr hint_12 =3D { > ICE_FLOW_SEG_HDR_PPPOE, ETH_RSS_NONFRAG_IPV4_TCP}; > struct rss_type_match_hdr hint_13 =3D { > ICE_FLOW_SEG_HDR_PPPOE, ETH_RSS_NONFRAG_IPV4_SCTP}; > +struct rss_type_match_hdr hint_14 =3D { > + ICE_FLOW_SEG_HDR_GTPU_EH, ETH_RSS_NONFRAG_IPV4_UDP}; struct > +rss_type_match_hdr hint_15 =3D { > + ICE_FLOW_SEG_HDR_GTPU_EH, ETH_RSS_NONFRAG_IPV4_TCP}; >=20 > /* Supported pattern for os default package. */ static struct > ice_pattern_match_item ice_hash_pattern_list_os[] =3D { @@ -130,8 +134,8 > @@ static struct ice_pattern_match_item ice_hash_pattern_list_comms[] =3D= { > {pattern_eth_ipv6_sctp, ICE_INSET_NONE, &hint_8}, > {pattern_empty, ICE_INSET_NONE, &hint_0}, > {pattern_eth_ipv4_gtpu_eh_ipv4, ICE_INSET_NONE, &hint_9}, > - {pattern_eth_ipv4_gtpu_eh_ipv4_udp, ICE_INSET_NONE, &hint_9}, > - {pattern_eth_ipv4_gtpu_eh_ipv4_tcp, ICE_INSET_NONE, &hint_9}, > + {pattern_eth_ipv4_gtpu_eh_ipv4_udp, ICE_INSET_NONE, &hint_14}, > + {pattern_eth_ipv4_gtpu_eh_ipv4_tcp, ICE_INSET_NONE, &hint_15}, > {pattern_eth_pppoes_ipv4, ICE_INSET_NONE, &hint_10}, > {pattern_eth_pppoes_ipv4_udp, ICE_INSET_NONE, &hint_11}, > {pattern_eth_pppoes_ipv4_tcp, ICE_INSET_NONE, &hint_12}, > -- > 2.13.6