From patchwork Tue Jul 18 13:32:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Kozyrev X-Patchwork-Id: 129621 X-Patchwork-Delegate: rasland@nvidia.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 13CE042E24; Tue, 18 Jul 2023 15:32:53 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 34A3342D5A; Tue, 18 Jul 2023 15:32:48 +0200 (CEST) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2040.outbound.protection.outlook.com [40.107.236.40]) by mails.dpdk.org (Postfix) with ESMTP id 81F54410D3; Tue, 18 Jul 2023 15:32:45 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lqeDZndVSijgmwKt5muHyMN1C+7upsP8UzMqxo3ESzK8QFzMDKwlpR+XGvB2gcjgX2E+nwe28qVrhbUolJ5HHolTr6KSOfBfOMDZjXhThkxSasfw9NSt5+H+1z7/y81vWzyeVdnXCcZJiUGPhaLcfbnzZCuXK/w0mYensoMU6shKaGFGeeBFFgxMjzLZMncjqGS3GTLtuKytYxWECIUD/jr5x3mIIXlFuQ+Jp9B+M9l8dC9p27/Ae7/sEIMXqeVBrAN72HTA1sOXOc99j5c4IeqvbAixb//gjfHoxO8xrQ1/aFPGsebUJLc77T8XQiMGqG34rf9qZXRsf3fLRub7eg== 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=RnfRCpX3BZuB1gY5jqd81tsimpBgqqH+3glG5ay26q0=; b=e4h8Schit67fqPHzR4jRqobIawmbRcIfZQezpN5jFpVbMC8r+E9gvHEtLsuEbMEEmrWuN06xjP7PuomVT5ZnMF56PQakvNgex+8P4dA1KOTDrS+0wvj82wOPqcnch5Ejh5ijQk7vHZ6YOXEJZroO0J6doaEdCj+Up1YzSlbdXlN48JHIiIc4U/1G1DULWZJsH8EBugeMNEFWKgHrV6DMYtlqi/ikb7CUf4Re51jC018F6Werf8h0+qBHf30xFOkhVdfJSlbajTrh0ZW6ZqueFON7tqlhxc37Rq0fXNaf+EojWd5PSsnSofDe7siqM3GcSsuSP8rydDK4OeltplzcJg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.161) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); 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=RnfRCpX3BZuB1gY5jqd81tsimpBgqqH+3glG5ay26q0=; b=eFlR2Rw47ytmcaBiRno50w2cuevYhPmThJuOJ84j9ytJhNU3pwHzIYWKAeU2ozCngPwPgFbSxG7pgdS8sZFC4jCUaABtNhCDgyu5B6I1IEuO/HlZb144+ien7GQqXLIocedxSPQitcYl1WOHIvUcjmZw8XU1r5RfAAugrFnVjf0hl49i8ubRzExO6aChAqmciwV2jHtY1gt9cMUoNyYN80/MYtN1rF4633DWbpZ1VivAkd+U9xbW6g5vtjmXMRF8x6D4JA2X+/ThvOUPaum/8ejZUGGg/OCfJjyLx7gO7a7psbUbiNDZUeBnWxr1mlJmO6oC4oAgcnxEbWX96NhTbA== Received: from BN0PR08CA0014.namprd08.prod.outlook.com (2603:10b6:408:142::23) by IA1PR12MB8588.namprd12.prod.outlook.com (2603:10b6:208:44f::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.32; Tue, 18 Jul 2023 13:32:42 +0000 Received: from BN8NAM11FT098.eop-nam11.prod.protection.outlook.com (2603:10b6:408:142:cafe::3) by BN0PR08CA0014.outlook.office365.com (2603:10b6:408:142::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.33 via Frontend Transport; Tue, 18 Jul 2023 13:32:42 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.161) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.161 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.161; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.161) by BN8NAM11FT098.mail.protection.outlook.com (10.13.177.196) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.33 via Frontend Transport; Tue, 18 Jul 2023 13:32:42 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Tue, 18 Jul 2023 06:32:31 -0700 Received: from pegasus01.mtr.labs.mlnx (10.126.231.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37; Tue, 18 Jul 2023 06:32:28 -0700 From: Alexander Kozyrev To: CC: , , , , , Bing Zhao Subject: [PATCH v2 1/3] net/mlx5: fix validation for conntrack indirect action Date: Tue, 18 Jul 2023 16:32:12 +0300 Message-ID: <20230718133214.3895192-1-akozyrev@nvidia.com> X-Mailer: git-send-email 2.18.2 In-Reply-To: <20230711152044.3141138-1-akozyrev@nvidia.com> References: <20230711152044.3141138-1-akozyrev@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [10.126.231.35] X-ClientProxiedBy: rnnvmail202.nvidia.com (10.129.68.7) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT098:EE_|IA1PR12MB8588:EE_ X-MS-Office365-Filtering-Correlation-Id: 3a06e654-1683-4f17-2c81-08db879376d1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QbwgHUlfU0I8mERFA89INpA6+t5HCg9c6aT60EYDwYT3fBl5USYWyIHwgoHQnzs9+CVnZirswArJJQSj8W91rcZ7fc0P+wZcUK0Pu2EF4drVzeBDLc7xUCdagQMLdSeESQiI2DjCZJUyi40qm3vWAKiR7qLUfSiO+JPwOZupooErn6s4IYfuxVU8PEeXs9XIaYqJ6J7N3g34sOxeWaDKkNfJc8q0G673+I5Lqt6+jB21eXsILIEYt+BUSWKqyhrbw2DiUTtDF+fgy0qIXmv9zxAMxqqQKW2L8vSAJeFTlcNvKFQtVNALKpesIJO1tAluMNbH/ZocAXw/JT+lU+2LRe/PTO36Coja99Uf4dS4B8RfMIWxajTzxnfQGqPSJvzz/XUgQRKv082maXRy4hfkF1IJ6uiBa++IBnmo4PKIHYI3OeSzkJQS7UkEwbz8Ji6w896B3zwacd/Y01dswgxhHvhQgNdhvhxQqOxUqhtt/T28Y68sx1C5MFwQnbrKF7xrVIBqaGma80JkRL+KlUqA+2qaDpquzLifECDWsGb7eZtfojMCxR1DPbczKTXD4gwVkT4TBKU1TrtPXc/v9ssI4PnHziDes1s5Vt7Y2YHZJu1G1paiz7RRKq7Q1rG5dk5Edrh/83XsQHNqtGkiypqww4XyaX8dzZiaEPDrMz/dYi8bonhazdlpxIrVA5cngeTJz3/oTy+dL1+Acs+Y+a0AZNuJELmTCkjqlcA//aNNK3u5j9JDbE2J+9ak7VCC9zWw X-Forefront-Antispam-Report: CIP:216.228.117.161; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge2.nvidia.com; CAT:NONE; SFS:(13230028)(4636009)(376002)(136003)(39860400002)(396003)(346002)(82310400008)(451199021)(40470700004)(36840700001)(46966006)(41300700001)(8676002)(70586007)(6916009)(2906002)(8936002)(70206006)(6666004)(54906003)(7636003)(356005)(86362001)(4326008)(36860700001)(316002)(47076005)(36756003)(5660300002)(426003)(2616005)(16526019)(40460700003)(1076003)(83380400001)(186003)(26005)(336012)(40480700001)(107886003)(82740400003)(478600001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jul 2023 13:32:42.4388 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3a06e654-1683-4f17-2c81-08db879376d1 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.161]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT098.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8588 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org From: Bing Zhao After rte_flow_shared_action_* API was replaced with rte_flow_action_handle_* API, one input parameter of the update interface was also changed. A generic pointer was used instead of the "const struct rte_flow_action *" pointer. In the entrance of mlx5 PMD callback for update, the validation is called for all indirect actions. But for conntrack type, the pointer is no longer with rte_flow_action pointer type and it will cause an incorrect casting and error. The content for updating should only be validated when needed. It should skip the validation in the entrance. Right now, the content was already added before updating the hardware by WQE. So the type of the indirect action should be checked before calling the action validate function. When creating a new conntrack object, the validation is still needed since all the content will be used to update the hardware context. Fixes: 40327aab1491 ("ethdev: introduce indirect flow action") Signed-off-by: Bing Zhao Acked-by: Ori Kam --- drivers/net/mlx5/mlx5_flow.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c index 4b567f61dd..9bd92f28fd 100644 --- a/drivers/net/mlx5/mlx5_flow.c +++ b/drivers/net/mlx5/mlx5_flow.c @@ -10753,9 +10753,18 @@ mlx5_action_handle_update(struct rte_eth_dev *dev, const struct mlx5_flow_driver_ops *fops = flow_get_drv_ops(flow_get_drv_type(dev, &attr)); int ret; + uint32_t act_idx = (uint32_t)(uintptr_t)handle; + uint32_t type = act_idx >> MLX5_INDIRECT_ACTION_TYPE_OFFSET; - ret = flow_drv_action_validate(dev, NULL, - (const struct rte_flow_action *)update, fops, error); + switch (type) { + case MLX5_INDIRECT_ACTION_TYPE_CT: + ret = 0; + break; + default: + ret = flow_drv_action_validate(dev, NULL, + (const struct rte_flow_action *)update, + fops, error); + } if (ret) return ret; return flow_drv_action_update(dev, handle, update, fops, From patchwork Tue Jul 18 13:32:13 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Kozyrev X-Patchwork-Id: 129620 X-Patchwork-Delegate: rasland@nvidia.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 641A742E24; Tue, 18 Jul 2023 15:32:47 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E2C3A410D3; Tue, 18 Jul 2023 15:32:46 +0200 (CEST) Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2061.outbound.protection.outlook.com [40.107.212.61]) by mails.dpdk.org (Postfix) with ESMTP id 5F52740A84; Tue, 18 Jul 2023 15:32:45 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Cfv+S5qZvkcRwUSSFBxWl7E77nBcQo9cyBfqhuOdWgjhPZms1eb893jG68zP63ckizvrWuTd9Qy5BwG0ivIadjNEVPpxSajNfkqZxlnG3OlrMAObt6yasiFqlVvPvyYf+m6u5gqH+pnwIBMH/ytFrrgW80Yxj4ev66SKMMN43yUfPfaztthqBuBTVnqkraX1jKf9/ios8uM9PfS8VE506CMNHRVrodk4T+j0ibTFc938QGfJjSMm5kbQ5sMxUi/wooV6/hcLHqPCik2BuYLpWszmihT6GuHyLN53klwzeqxCue7Ycy1I3OkDEnalq3Dsc+kYYt63qEoC9LZ7hYAAAA== 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=X2PudtKe9dSYmvJGsAYewNTU8ReuGKpDJAJ6SQFkeHU=; b=BWfaeqLFS9oljqtMFAg8nEzuKa4xUg3LqjxG4ZrhyphJMxGCQ1zUiev+aJo8tDsTzBM5E6EQsSXdOMx/t6oRDn2aHCL0oZ/eHIpOeph22Fb54Tw+nbcgY3PCnxL/lRqbJ9VT+9RKl0pL8+CghAT45GCZdbL20VLD58qBiXrBN9/jmhlu8u01RdwdoyMbRv8vcbEmm7Ou02B+yaozxGj5HV+lr+KeqxrvEfRtHBL0zBm7gsmffMej1XwhoD1UA6OAuaiufXvZRho1ET1rPe97x417M5M7/32Jk7hzrnZw2bntbV1tbJQUCwQngnxYBzlyfM3SD1O/aBihdn1vZmtm8g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); 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=X2PudtKe9dSYmvJGsAYewNTU8ReuGKpDJAJ6SQFkeHU=; b=SsYkyX8IzdzpJckPnri1ZAurTDjXOCc0iwTNYmkEFHGsR3SI1A0+3dfGak7YtR6+K/ZtHBtZ+ki12e4giYWJkm1Efxje4MXyYJKfoNQMzpU8LEccM56ZJSOwFuDJbUsErg7xW9Ots2pBuMsl6H1pnR4AC7T6SXtyFwz1LOZebfjMC2rGj3ry2L8BpPNEHbhbqlRbaH26+ZZRO/FtqYlDSgFexaHX2Eoq3gndD3mS34MtBYOHf7o98GxiH7+wk2VCHGxsMgVHTr2Rd31tWbBOa7fawXZeXZI0GGEmLwJyifh4RKo56RJLdk//aKVManv6DNwn+s/jPJqiLH9uIQ9tHg== Received: from DM6PR13CA0015.namprd13.prod.outlook.com (2603:10b6:5:bc::28) by CY5PR12MB6432.namprd12.prod.outlook.com (2603:10b6:930:38::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6609.23; Tue, 18 Jul 2023 13:32:43 +0000 Received: from DM6NAM11FT068.eop-nam11.prod.protection.outlook.com (2603:10b6:5:bc:cafe::4c) by DM6PR13CA0015.outlook.office365.com (2603:10b6:5:bc::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6609.23 via Frontend Transport; Tue, 18 Jul 2023 13:32:43 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by DM6NAM11FT068.mail.protection.outlook.com (10.13.173.67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.34 via Frontend Transport; Tue, 18 Jul 2023 13:32:43 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Tue, 18 Jul 2023 06:32:33 -0700 Received: from pegasus01.mtr.labs.mlnx (10.126.231.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37; Tue, 18 Jul 2023 06:32:31 -0700 From: Alexander Kozyrev To: CC: , , , , Subject: [PATCH v2 2/3] net/mlx5: fix handle validation for meter mark Date: Tue, 18 Jul 2023 16:32:13 +0300 Message-ID: <20230718133214.3895192-2-akozyrev@nvidia.com> X-Mailer: git-send-email 2.18.2 In-Reply-To: <20230718133214.3895192-1-akozyrev@nvidia.com> References: <20230711152044.3141138-1-akozyrev@nvidia.com> <20230718133214.3895192-1-akozyrev@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [10.126.231.35] X-ClientProxiedBy: rnnvmail202.nvidia.com (10.129.68.7) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT068:EE_|CY5PR12MB6432:EE_ X-MS-Office365-Filtering-Correlation-Id: b9fa44f4-6efa-4f14-fa85-08db87937761 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ovUqhqbbazYKAks8WMFa/ciKt1cTfq8OPm5n5/Ny7AcFbf/Bkk2C3TCl8PiPdZxZD3dqs+bIXDRixOgDdi8m/YBA+uYHxzVeMWJ2ntCnNmWRlpWwzJEOaf8X26S6w6iTcmYwJiHqcPPXmwjYMit62bgZEbvHXJnpXPcEtlLhvf/cFb1zjUO88Zi37wyA8zX7Y677q5l32SP4gALrkZZ/HgENEOla/O7PMH3LbirzJOUf9j9peziG1T3olLsHP93MeN72ycb3dparL2LhPqEpUsSauucrVqMRyoXofO4EGJuFtku0Gpp9ypJIuo4cLQPxvXkrvcdfx8Me/N1ywW9K1eZcG98fntOWZ+G6oJw4ee62qx2BPW/2DQ7qfzS76QYK/CyFhi3ey7HZNFLZWKIM1m3yDm4KAj58dflEH/Jes+ZDoZWurxigzMFbHeUEMPwhaBR1YTSdyENe9kH1PUGWwQ8VrsHqPvChpauOLcfFIFYGzwVLdYtsm2kgZ1tdSZPmnkmPs+gdI/MQLphu0Wh8GU6As3IEdRJUIcHZ5hqRyOEysLnnWeI+c21z7amM3jpOHJ4xWD84Cb5NgXVdU8Y2wrhnO7cmCMlFdgRQnenBF84pUQlDWUZWbzH28fexd92JQq2g5FDFs7xkqahp+y0hvnAur1KNxn8ewh7Vx9U6Sq6LSAcUu+vMUnYYQP/gYIT2u1ihYdOX3LdyxiSMD3dipp9Lfr/0t543vfub5obqEOo= X-Forefront-Antispam-Report: CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE; SFS:(13230028)(4636009)(39860400002)(346002)(396003)(136003)(376002)(451199021)(82310400008)(36840700001)(40470700004)(46966006)(47076005)(6916009)(36860700001)(2616005)(426003)(83380400001)(4326008)(40480700001)(70586007)(70206006)(6666004)(316002)(54906003)(16526019)(336012)(186003)(1076003)(26005)(478600001)(2906002)(4744005)(7636003)(36756003)(86362001)(40460700003)(41300700001)(356005)(82740400003)(8676002)(8936002)(5660300002); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jul 2023 13:32:43.4503 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b9fa44f4-6efa-4f14-fa85-08db87937761 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.160]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT068.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6432 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Skip the METER_MARK validation for the indirect action update. The old synchronous indirect action update was left out during the METER_MARK implementation in favor of the async way. Allow the sync method of doing this with relaxed validation. Fixes: 48fbb0e93d06 ("net/mlx5: support flow meter mark indirect action with HWS") Signed-off-by: Alexander Kozyrev Acked-by: Ori Kam --- drivers/net/mlx5/mlx5_flow.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c index 9bd92f28fd..e91eb636d0 100644 --- a/drivers/net/mlx5/mlx5_flow.c +++ b/drivers/net/mlx5/mlx5_flow.c @@ -10758,6 +10758,7 @@ mlx5_action_handle_update(struct rte_eth_dev *dev, switch (type) { case MLX5_INDIRECT_ACTION_TYPE_CT: + case MLX5_INDIRECT_ACTION_TYPE_METER_MARK: ret = 0; break; default: From patchwork Tue Jul 18 13:32:14 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Kozyrev X-Patchwork-Id: 129622 X-Patchwork-Delegate: rasland@nvidia.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 6CE1542E24; Tue, 18 Jul 2023 15:33:02 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D508042D52; Tue, 18 Jul 2023 15:32:49 +0200 (CEST) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2040.outbound.protection.outlook.com [40.107.236.40]) by mails.dpdk.org (Postfix) with ESMTP id A6D7542D51; Tue, 18 Jul 2023 15:32:48 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HF50+DcQVsIHDzGQOusT2pHFGE7nZWWtenZIF7MqdNmJLTCoqUaKUyNq4x2W0tiQeP9eK07e//gmiXUfl41Z9wmni2UW5FKE+sphyP/N1++leFElJ/MocuhHWyJTqUcmt2QvuaEMNjIatObyVJiOicrZicklBjhT4GrrzF0OkE6Zf3k1FysCHd/i+90vMI5VX8hRdNJ+dbEGymUyywlE4L9pwaTPAxwKPol3Gr8PDSdQW9ExZhYMgJo9KrD23fOvpeMZzl/b1UF8SVtmmVHoERivRwQb0kb5PqAfFPMjgMHnSpEdyMOX33fcF2mWrVyo6ATdTdVxdzhBf7KL60+ZSg== 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=1zlxxxo3rxPXDqCyGciBwH1JRaw13c+SUn3KbE6HM7A=; b=HZU5yhQOUMgSsbGUuwlLxFMpYweSNfVWAKfagXa694DH4oMif/igEPc7uejDmjtQkQ3lSzyz0kW6kEZFQzaedG3W9r+FK5pnwCNdPSAzdTYEykdcJDnqp9QoZAQaQNDeLL3Xl62iol2GixYUR0y38imnq405XbLPA/EKtKZmEmp5UgIi8HdOukvFMEwp/RfDLHCotrnAN0GaRJ5H8M5wLXFcSgU3Q64djLbflCCmnScCK0nTPyupcsyQWoB3iji/pGzegcv7gEYd6HV7624QvMDhKOCW/GiJg4gLXFdQZHg2wFAgcjJ1ZpUP1myzntLRlc3W8bCs/uO9lIhLL5176Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.161) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); 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=1zlxxxo3rxPXDqCyGciBwH1JRaw13c+SUn3KbE6HM7A=; b=D445M7emUfZXmCJJ0RfBK6gvrCroYq+xurX6GfGfj+ozBpEE51a6O1R+nnhX4nGu2L5Q/gWrU43YS7OFqAcVhYUb0I7r2kFJoXWxolKv5Xm28481EqvSvBkkEhYCiXMpxjVgAsX5NKXjg23621m3kjjkIj7zQwjKgWAVNDgN5bdq5QfCCVUN7+R6i1lM6Jmx/xA3muIsXVl/Oepm7zwF6lxuh5uT9ZemxgnEU8qMrP8ydDBIW4VmMiFW5/UGfOJxc49UndjXl7fdjMOq3uEPvqULdPAOmJ8Xg2aRQ3Qhd908OoUqaSrw0YU88eQ8t5zgfSClCsiBGl9EpmsnDY01jA== Received: from BN9PR03CA0136.namprd03.prod.outlook.com (2603:10b6:408:fe::21) by DS0PR12MB7655.namprd12.prod.outlook.com (2603:10b6:8:11e::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.31; Tue, 18 Jul 2023 13:32:47 +0000 Received: from BN8NAM11FT054.eop-nam11.prod.protection.outlook.com (2603:10b6:408:fe:cafe::fa) by BN9PR03CA0136.outlook.office365.com (2603:10b6:408:fe::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.33 via Frontend Transport; Tue, 18 Jul 2023 13:32:47 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.161) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.161 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.161; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.161) by BN8NAM11FT054.mail.protection.outlook.com (10.13.177.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.33 via Frontend Transport; Tue, 18 Jul 2023 13:32:46 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Tue, 18 Jul 2023 06:32:35 -0700 Received: from pegasus01.mtr.labs.mlnx (10.126.231.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37; Tue, 18 Jul 2023 06:32:33 -0700 From: Alexander Kozyrev To: CC: , , , , Subject: [PATCH v2 3/3] app/testpmd: fix meter mark handle update Date: Tue, 18 Jul 2023 16:32:14 +0300 Message-ID: <20230718133214.3895192-3-akozyrev@nvidia.com> X-Mailer: git-send-email 2.18.2 In-Reply-To: <20230718133214.3895192-1-akozyrev@nvidia.com> References: <20230711152044.3141138-1-akozyrev@nvidia.com> <20230718133214.3895192-1-akozyrev@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [10.126.231.35] X-ClientProxiedBy: rnnvmail202.nvidia.com (10.129.68.7) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT054:EE_|DS0PR12MB7655:EE_ X-MS-Office365-Filtering-Correlation-Id: 52f60a27-1486-40c9-f216-08db87937987 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pMU9pOwyWwL3+P4gBI7uSOwamMItHBF77VIuz36NEzlMicEuS8hHXrcUEHnum5BV8uze0tgPSnKN+lPwj+fpk63clQdKhpSgggV/tqjrBkOXOz5GVGpTj+4mDnJrurvrrJ8i+xhVuXdcE6JaKL+I1W+kBrjrtyYLY7nfTY9Irq+UwD/hec+BWH5f2edrOGQx/2JUUbByVpRUAlSrXhC4rmJD33cCLGVdmEMNi9B7O+v2PrgswYpOBFxNWeQMLjHfMEr75LnpEu38zRXuUM5d2fveiuEW4+B7lqE8j33g3IQnQ2Tc8cC2M4BKy5srqWG7fWUxnejvshO4dQTu9KajANOQ+VR9njL0xf6AyuLP2ECr8DFFE8eLg5PoZ9o0vlFzcLYdlFZ1nqiifcoTshwzqtwWACmGAn6Pi+1Xc1lIlOyH+ayKrk2tZVQqBwb2nNT1RYyIHBpVUfqJ+cSvD271X6rW2azZNHtJjnor4VGrG+Qbo6Eo3k2wAw3aK2DvJWUCItO1aszw7uRwZcaWfRWJaNNYM60Ed1gwiDD1PWx2Qv9nQ3ZBICQG59kPdTpKYQI8RSISOj1MzDUWGB1XayOYBggKOiSkERu0Y+SwKNVL7HAWpBb21/J6lpbV6DGW+9bOf0CsXFPZblRc2ifGKUv9h43zoEeHt/d95QxTxigz0kaNoaYJCy2ks1V1Pr7Qjs9pc25SPeB4btvnrtXGN/zwwO9e+jk7+8BxhFd6ya58ocs= X-Forefront-Antispam-Report: CIP:216.228.117.161; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge2.nvidia.com; CAT:NONE; SFS:(13230028)(4636009)(396003)(346002)(136003)(39860400002)(376002)(82310400008)(451199021)(36840700001)(46966006)(40470700004)(2906002)(478600001)(54906003)(6666004)(8676002)(36756003)(15650500001)(4326008)(6916009)(316002)(70586007)(70206006)(41300700001)(8936002)(426003)(82740400003)(83380400001)(336012)(47076005)(2616005)(356005)(16526019)(7636003)(40460700003)(86362001)(26005)(1076003)(186003)(40480700001)(36860700001)(5660300002); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jul 2023 13:32:46.9920 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 52f60a27-1486-40c9-f216-08db87937987 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.161]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT054.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7655 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org The indirect action handle update for the METER_MERK action was implemented only for the async RTE Flow API. Allow updating the METER_MARK parameters via the old sync method. Fixes: 9c4a0c1859a3 ("ethdev: add meter color mark flow action") Signed-off-by: Alexander Kozyrev Acked-by: Ori Kam --- app/test-pmd/config.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index c4784b7f2c..11f3a22048 100644 --- a/app/test-pmd/config.c +++ b/app/test-pmd/config.c @@ -1943,6 +1943,7 @@ port_action_handle_update(portid_t port_id, uint32_t id, struct rte_flow_error error; struct rte_flow_action_handle *action_handle; struct port_indirect_action *pia; + struct rte_flow_update_meter_mark mtr_update; const void *update; action_handle = port_action_handle_get_by_id(port_id, id); @@ -1956,6 +1957,17 @@ port_action_handle_update(portid_t port_id, uint32_t id, case RTE_FLOW_ACTION_TYPE_CONNTRACK: update = action->conf; break; + case RTE_FLOW_ACTION_TYPE_METER_MARK: + memcpy(&mtr_update.meter_mark, action->conf, + sizeof(struct rte_flow_action_meter_mark)); + if (mtr_update.meter_mark.profile) + mtr_update.profile_valid = 1; + if (mtr_update.meter_mark.policy) + mtr_update.policy_valid = 1; + mtr_update.color_mode_valid = 1; + mtr_update.state_valid = 1; + update = &mtr_update; + break; default: update = action; break; @@ -3162,8 +3174,10 @@ port_queue_action_handle_update(portid_t port_id, case RTE_FLOW_ACTION_TYPE_METER_MARK: rte_memcpy(&mtr_update.meter_mark, action->conf, sizeof(struct rte_flow_action_meter_mark)); - mtr_update.profile_valid = 1; - mtr_update.policy_valid = 1; + if (mtr_update.meter_mark.profile) + mtr_update.profile_valid = 1; + if (mtr_update.meter_mark.policy) + mtr_update.policy_valid = 1; mtr_update.color_mode_valid = 1; mtr_update.init_color_valid = 1; mtr_update.state_valid = 1;