From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5242A42979 for ; Tue, 18 Apr 2023 08:23:04 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4EB6D41144; Tue, 18 Apr 2023 08:23:04 +0200 (CEST) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2057.outbound.protection.outlook.com [40.107.243.57]) by mails.dpdk.org (Postfix) with ESMTP id 087B040EDF for ; Tue, 18 Apr 2023 08:23:03 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bYiS3/YsSsapeCr8CT9QrlU2dxRgeaS3w+QJ78brcGD7rVb48pSm91BF2SWB0n6WJPdiN8GmK1okg5xk27mcrJbpPaqjTGXvD5tXALDTphRtzLGVWdrBCZLX2ZG3iwfK75w2/O6cdgZmV6itr4eM7+fqe8NuTwDga87agnkDHDuOIMV4p/Z9jhqW3HgJWxFBnYG5BJpTJrbKYaAsdAVXMW/SjBEO/FZ7xaBcILswWIX+scaHJj1i1Cni+vXEdyU9D98qjjBMTnL7md7liZ/WjO89mF5Ch01De5GVuADltYyYXwXMgZA8LdcyxVd4gX+24HlM674en00nWTzJ4tb6/w== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fkVnF4mS0QOw1kGXNxPuPVDbvC4FWlDwfJyoHiVqOCA=; b=bEebqAy8HRhIRVssO9fH0n8qPlcR1yxzYp4rYeSchDL16vJIZ+SIsjMu5aBPj2c5ZzvTreHFq9e/fRx++NOo6pveVq+j2CyiXUNAeFQsp/8C/ey2m6XEhACu8MfL0qaF+ibWfXVNPNcuHROvdcfpACB8rn/QH1ryPNfTW+7HhzqsUoFfmEx+FVVYnv5T/agJiNsJZ3ku3WR7u7Kpim+9HIO5gBxNKeQE88jPAaXjiPvGNGoX5J2/iP6c/4RmMAEALVDwuLe8sLQNvITND4X5sRh6FUxkz46KjGWDGO745l2eJthlvQOSfoKGnoeYcjoOpRV+rbxdn9CFDKgw79Bx+w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fkVnF4mS0QOw1kGXNxPuPVDbvC4FWlDwfJyoHiVqOCA=; b=ejizA30ZN9WjgC1LVK/qmAlYb5KQJIquM/SER78MNT/5JB3VYQnGl4n2bEciH8Ud6fxyJNzN4LE40I+i3tx0Cd1bieMNVUYXhWtgMSvAGBUOC8CxH2CxgVHzOlgE2p7+jOAT7gS+mT4ReE0x9e8MXR1Ygp/b2C+S3KOBk+6kfqhN/nqpJFN92QMmaN8umeje/qy2GQvDQC0e/Ir8gABfmbtX7DuXJ3ZyuP2ERIlp8AI94vmJnJO/tvqjcy4tUA8XigWFWbnRt2O+kpa+Ze2iLP1FhW9QIoe70AyR9plWSEB/ezKf1yArsa+eBmLKyTd5BrwU/I7reR0mbbaAslQpQg== Received: from DM4PR12MB5373.namprd12.prod.outlook.com (2603:10b6:5:39d::14) by MN6PR12MB8516.namprd12.prod.outlook.com (2603:10b6:208:46f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.45; Tue, 18 Apr 2023 06:22:58 +0000 Received: from DM4PR12MB5373.namprd12.prod.outlook.com ([fe80::95e7:39c2:fac6:f6c8]) by DM4PR12MB5373.namprd12.prod.outlook.com ([fe80::95e7:39c2:fac6:f6c8%6]) with mapi id 15.20.6298.045; Tue, 18 Apr 2023 06:22:58 +0000 From: "Xueming(Steven) Li" To: Hamdan Igbaria , Hamdan Igbaria , Alex Vesker , "NBU-Contact-Thomas Monjalon (EXTERNAL)" , Suanming Mou CC: "stable@dpdk.org" , Ori Kam Subject: RE: [PATCH 22.11] net/mlx5/hws: fix IPv4 fragment matching Thread-Topic: [PATCH 22.11] net/mlx5/hws: fix IPv4 fragment matching Thread-Index: AQHZa6vZcZV/TkXACU+YTTl/8aoLv68woi5Q Date: Tue, 18 Apr 2023 06:22:57 +0000 Message-ID: References: <20230410125542.3108908-1-hamdani@nvidia.com> In-Reply-To: <20230410125542.3108908-1-hamdani@nvidia.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM4PR12MB5373:EE_|MN6PR12MB8516:EE_ x-ms-office365-filtering-correlation-id: bc92683d-6308-4f55-7e28-08db3fd55a5c x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: vgJYj8KP76rf5GIT4Df8msZUzt+3+jsmphI4cjMhfnrJfOqTqMFbaPNPJMZ4SjIiu2GpNNzPjkdqRCFi1S46kH9Hw6Wkfnlo/yqbOFEDZsLdGexyWNZeHQuSMKqaESIuuns/udKKOFt3OTE6w0hlzpELUHdz8TpafUxk681iEAesRkGQwAPycJ5WU+OawFwpYxj+h1O10HTmrNwGImWUXGilZHYzMHQ3UNXzD8CtbAGYPxsXb89E3dsLzFfmsEzzJZ10oWf+cEEpq16lBmJ3qFC9IM/YFJ0bmJxxaUHPCS5v6t5QvA7zEiOqZ+PIE9DBAGyAeJ/JArf0JsQ/I5tCVB+7sTIhiQpl8m6pNO+YRNJJ8hG+eLX3epVHjjBTfm2UwgEaC6HC+OjePO6IjbS2PI6EVmSm0RYidY1BiqnAN1ibNfOpqLPLmwiUvWASDzYbfLlJMXq8/V7uXkn7Q0/Af9oXI9UXFrFNwipkwlYf4XD1s6se2vEuMT4v2fXZxea0t0xT7339PGmwkqMBJSHSpJrurF1drthzM6Rm0P+KSHt2q9EL9zhCkvn13CDT94VoygptzOHA9T3KdcI32GsmqrQ5mvhdEcRsWEC/wN3To2tCmzN/469AQXF6SA1H3zwz6XHYf+lMCEkzSkY2qJhAMQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR12MB5373.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(376002)(136003)(346002)(396003)(39860400002)(366004)(451199021)(7696005)(478600001)(86362001)(110136005)(55016003)(71200400001)(26005)(83380400001)(33656002)(107886003)(9686003)(6506007)(53546011)(186003)(38070700005)(38100700002)(122000001)(64756008)(76116006)(66556008)(66946007)(66476007)(316002)(66446008)(2906002)(4326008)(8936002)(5660300002)(8676002)(52536014)(41300700001)(54906003)(6636002)(309714004); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?ZvoKWjvbVArUThZvHYqCB3/ittn/qsKVnagwvJWPAKeMIg7TyUYHhWb490zr?= =?us-ascii?Q?OZBYjhKVw/+lywwfP+zAwxabwgu3vC/DTdx1YhyfM5NDe46PfLZezlwwt0GY?= =?us-ascii?Q?fSSA6AyYV7EjG1SXjYuccL7xgS2Wqde2N0xM00s/a9eN7aMsbXC92KU/cnse?= =?us-ascii?Q?B2VXEgEmfgM9NagOCFJYx6d7usFKBJfFCcQdQsfZdEfhByidrIem8tcEsXSR?= =?us-ascii?Q?Z63W2+n9N2Abb/PdI+nlK19Wrfa0ijSbNmiW3Y7+BkhH5L0HPo5VaxXjFXb9?= =?us-ascii?Q?CKWwkbrLu+TZ8Um1Og/K9AS43/GiqLk+aWeA4Gf8qvxG1bN80tsVnp7pEijC?= =?us-ascii?Q?Aa48AuZRdFK8X8mA3KZ6WB2J8rYxpIYK1aWbkL4vYw/n3JT+MloL9q6stFPR?= =?us-ascii?Q?6mYvNFTUT0mftw8LKdt2jeXxma0/XV4vCHtt/WLvlrHNNyB1gW1YFMNVPmRy?= =?us-ascii?Q?29ITVANh2dgqdnEmoAR5bDoyM15kfwrjUKsmkLRFpRGZV4nYaIQ9s0InrYxd?= =?us-ascii?Q?+TniBZLPoZ0t6Dgq0FOx6FDvef3JONrGEt5+pTUKmP+CoS4rtUbf8/N2PwHu?= =?us-ascii?Q?QnI9NQgk8WLY3OsNAjxCRq+nblK0/qA/FnKxJ7Xlrms8qMvzK+NqDMSNDe3S?= =?us-ascii?Q?Yv6gU5+LrggKBnh4wbGs7dmHRdjmPdSie/H3AlVV41lGAGFkGcaOavdp0fN4?= =?us-ascii?Q?yK8OS4EyokZJEsvPp0CH6p6UNakqJwdnOfo8pbWi//kd40tA8zmC3qvMi0tA?= =?us-ascii?Q?8qz8Qd0R//cZWriIBTjmdeFA63Msx1ENQT08ZqtOeA0ERIQ774Y5C3yhMWxF?= =?us-ascii?Q?4R4mkTTM2GEIu8jyWJef9QQLJS2uwyZBtgYjAmSFWVPExvHo+GaXHx3hUMQj?= =?us-ascii?Q?G5xanGtcOhD/R2AqUyKmh4iIP0BQS/PYjQ4ZoMlLouUfQzm2YmTGN8sTIr0Q?= =?us-ascii?Q?w64x7K6PRTaBE/bZ/QzjZ+36Z+YFeVFBatqDAbnHrKr1sFIS725/mutI7K3W?= =?us-ascii?Q?L3dEcyMtxess+bIxEPRgtkCrCrvsLKpjxLDOl4IQw4btzOwzKoHriQX/00Z/?= =?us-ascii?Q?1WrvftHkLXR0z9URLuVoaKNZ0mBHpVjyxU3B9hHt6UU8POmUykuZK0xLWkGX?= =?us-ascii?Q?seYdQMwno5EPrkeqNgg7i5qqYuO4MFv7ZDeuPmwtDL+IVZdSScbw5fzXFinU?= =?us-ascii?Q?WIm99Gb9oC1HKwzWSI7UkrnskBPJ6202U/zQxNPVmrK8vAIdUvXRWrj2nzsm?= =?us-ascii?Q?516L5zlBudM03SihnjJSwXhyx4UvBq71nczasg7HKDFRlHbkuFEjElYP2A0r?= =?us-ascii?Q?bCCVSzoybs5RH+xvkn7YDCAQxbWkAbZOY3sqyu0WISijOF0hPezvdp/jMibh?= =?us-ascii?Q?MTNUXCgMyeL8vegKQcvX+qwD81DFReVKlCDX90dznz2ws1BPZ42Dh9sdnmMG?= =?us-ascii?Q?EcYC4tCrJT4nCey3BBlAJBZNeHwsG0ChDtksbOX60fM/OSAD9bCCF/6hFkPz?= =?us-ascii?Q?x0w37D8VBeZ+r4vb0qrX2W6exu4KR03+4/DSiTEKsn+c4trftyDoUfqhiBmw?= =?us-ascii?Q?W2rmupv9LBTxwbETgNzI3aqfdxfL3FSg7sWHg8SR?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB5373.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bc92683d-6308-4f55-7e28-08db3fd55a5c X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Apr 2023 06:22:57.9493 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 54Yqpl3Ohe8rshQOSw7zWMhVMeh84l8IR4xxZKIdF9WLszj3gQHxRkjw5/nPnbwH8SFPzU88eyFwY8os9j0AnA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN6PR12MB8516 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 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 Thanks, patch applied > -----Original Message----- > From: Hamdan Igbaria > Sent: 4/10/2023 20:56 > To: Hamdan Igbaria ; Alex Vesker > ; NBU-Contact-Thomas Monjalon (EXTERNAL) > ; Suanming Mou > Cc: stable@dpdk.org; Ori Kam > Subject: [PATCH 22.11] net/mlx5/hws: fix IPv4 fragment matching >=20 > [ upstream commit f3291366c95096fbe99ab8dd2248d033b191522d ] >=20 > Fix IPv4 frag matching in case fragment_offset field is set to non zero v= alue in > the mask. > fragment_offset value is converted using the following logic: > -In case fragment_offset value was set to 0x3fff, then we will match onl= y on > ip_fragmented bit. > -Otherwise we will match fragment_offset based on spec and last same as > any other field. >=20 > Fixes: c55c2bf35333 ("net/mlx5/hws: add definer layer") >=20 > Signed-off-by: Hamdan Igbaria > --- > drivers/net/mlx5/hws/mlx5dr_definer.c | 11 +++++++++-- > drivers/net/mlx5/hws/mlx5dr_definer.h | 9 +++++++-- > 2 files changed, 16 insertions(+), 4 deletions(-) >=20 > diff --git a/drivers/net/mlx5/hws/mlx5dr_definer.c > b/drivers/net/mlx5/hws/mlx5dr_definer.c > index 6b98eb8c96..768bed580d 100644 > --- a/drivers/net/mlx5/hws/mlx5dr_definer.c > +++ b/drivers/net/mlx5/hws/mlx5dr_definer.c > @@ -123,6 +123,7 @@ struct mlx5dr_definer_conv_data { > X(SET, ipv4_next_proto, v->next_proto_id, > rte_ipv4_hdr) \ > X(SET, ipv4_version, STE_IPV4, > rte_ipv4_hdr) \ > X(SET_BE16, ipv4_frag, v->fragment_offset, > rte_ipv4_hdr) \ > + X(SET, ip_fragmented, !!v->fragment_offset, rte_ipv= 4_hdr) \ > X(SET_BE16, ipv6_payload_len, v->hdr.payload_len, > rte_flow_item_ipv6) \ > X(SET, ipv6_proto, v->hdr.proto, > rte_flow_item_ipv6) \ > X(SET, ipv6_hop_limits, v->hdr.hop_limits, > rte_flow_item_ipv6) \ > @@ -542,8 +543,14 @@ mlx5dr_definer_conv_item_ipv4(struct > mlx5dr_definer_conv_data *cd, > if (m->fragment_offset) { > fc =3D &cd->fc[DR_CALC_FNAME(IP_FRAG, inner)]; > fc->item_idx =3D item_idx; > - fc->tag_set =3D &mlx5dr_definer_ipv4_frag_set; > - DR_CALC_SET(fc, eth_l3, fragment_offset, inner); > + if (rte_be_to_cpu_16(m->fragment_offset) =3D=3D 0x3fff) { > + fc->tag_set =3D &mlx5dr_definer_ip_fragmented_set; > + DR_CALC_SET(fc, eth_l2, ip_fragmented, inner); > + } else { > + fc->is_range =3D l && l->fragment_offset; > + fc->tag_set =3D &mlx5dr_definer_ipv4_frag_set; > + DR_CALC_SET(fc, eth_l3, ipv4_frag, inner); > + } > } >=20 > if (m->next_proto_id) { > diff --git a/drivers/net/mlx5/hws/mlx5dr_definer.h > b/drivers/net/mlx5/hws/mlx5dr_definer.h > index d52c6b0627..5b38a54e6b 100644 > --- a/drivers/net/mlx5/hws/mlx5dr_definer.h > +++ b/drivers/net/mlx5/hws/mlx5dr_definer.h > @@ -196,8 +196,13 @@ struct mlx5_ifc_definer_hl_eth_l3_bits { > u8 time_to_live_hop_limit[0x8]; > u8 protocol_next_header[0x8]; > u8 identification[0x10]; > - u8 flags[0x3]; > - u8 fragment_offset[0xd]; > + union { > + u8 ipv4_frag[0x10]; > + struct { > + u8 flags[0x3]; > + u8 fragment_offset[0xd]; > + }; > + }; > u8 ipv4_total_length[0x10]; > u8 checksum[0x10]; > u8 reserved_at_60[0xc]; > -- > 2.31.1