From patchwork Tue May 16 06:37:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Baum X-Patchwork-Id: 126869 X-Patchwork-Delegate: ferruh.yigit@amd.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 EF9F642B1F; Tue, 16 May 2023 08:38:28 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8647142D56; Tue, 16 May 2023 08:38:12 +0200 (CEST) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2053.outbound.protection.outlook.com [40.107.94.53]) by mails.dpdk.org (Postfix) with ESMTP id DE8DA42D3A for ; Tue, 16 May 2023 08:38:10 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=B1fDnfSYclWz1NzZnXPtwH2kjqzu5/FE0+l3Cylgy9RN/WXDibYch2FZG5AkHcmtOYcepx4Yci+Aj6GohHAnXW7PESF47wcz6hJ41OjFFfdtZqq2D75a0/QP5YDqGa9UQ8A/potq/Sa/SIZ6Qn8h19unrD6D8QLWNdNhqyU9X7IxYrLh8cTK1D/4vu7h+5ja5Thv/Ee2uW2GmPowtApzbMn1KE6g1IlTHuoD81FQ6djObw+edvZUyWZr3zz8AO+nsaswWhodDz4dilK3filsW2qc3OKJBmXu2PjyAeDI1gEOq2UikqpC8tCrUTnTJQ13z6Uv8IZ5OJef1vzNLRZULg== 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=xcB2cDkV9LHlZtF1BsYaDqhk+hW9QqG57+Vj/eaZ/Eg=; b=bDz4Bw2VlBrJQd/Rzu+kc0o2RGxthWtX2WliHsK90HGhzYNFWvpDlg0ibEZ1R9GPT79jCeGkZL0VysLiRovnt/eyWmmSAHp1Zv7UiPlEl3rpUnuo97KcXSCxTSlNMMW9LXb6Xz+UvxqBG0Sf8UOqn51tMi5GEmyePxvf/D2auk0q5hxzkZMY/RscBze5po0IjaxAhqNXrnpnwjMeKfDEKjPHRYPNNeKnzZ7PIb0uIXFgVPy/kaWGIdc29tzhx9oVr80fle2vdrDphqlpqBs0qmhikXtNg2vMfqDjYpa9RhdV2GkQmzaxHUajas1CHKygThLPi2VgYo6DBjFxWA1Wsg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.232) 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=xcB2cDkV9LHlZtF1BsYaDqhk+hW9QqG57+Vj/eaZ/Eg=; b=d+FnNVXXrUlPFcFZ9f8LrKzPvchU6ZC9iQzseKAZP/VVpMx7wbUfm3zPDysLUdwltIcEJjRtOOBXmAzJxM7p/nthDqx+ird2evjzQHug2PdVBBxuNOwXDSrk0MrlUlMRxmJtQ3r66LnLj258/Ss0yqXMb0cKd9TqN6Z5p+dey+TFcmtL0EELu+QJO2hyqvxJPjjpDNWNnDFemvCG6ujOOnhSiVuy4KthxTxVg3Wd83Tp936Uj5xYhdNTIDZMJ7HAZcowK8ydOFaPzAre9Qt4WtZ/OimKZDLMLSLTzcDQd0WfQ+6WPq2J95bTVXXNYxQmCbH1CArEuy3WzYTBPmtYAA== Received: from DM6PR03CA0064.namprd03.prod.outlook.com (2603:10b6:5:100::41) by SA1PR12MB7409.namprd12.prod.outlook.com (2603:10b6:806:29c::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.33; Tue, 16 May 2023 06:38:08 +0000 Received: from CY4PEPF0000C984.namprd02.prod.outlook.com (2603:10b6:5:100:cafe::69) by DM6PR03CA0064.outlook.office365.com (2603:10b6:5:100::41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.30 via Frontend Transport; Tue, 16 May 2023 06:38:07 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.118.232) 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.118.232 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.118.232; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.118.232) by CY4PEPF0000C984.mail.protection.outlook.com (10.167.241.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6411.11 via Frontend Transport; Tue, 16 May 2023 06:38:07 +0000 Received: from drhqmail202.nvidia.com (10.126.190.181) by mail.nvidia.com (10.127.129.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Mon, 15 May 2023 23:38:03 -0700 Received: from drhqmail202.nvidia.com (10.126.190.181) by drhqmail202.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37; Mon, 15 May 2023 23:38:03 -0700 Received: from nvidia.com (10.127.8.13) by mail.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37 via Frontend Transport; Mon, 15 May 2023 23:38:01 -0700 From: Michael Baum To: CC: Ori Kam , Aman Singh , "Yuying Zhang" , Ferruh Yigit , "Thomas Monjalon" Subject: [PATCH v1 4/7] net/mlx5: reduce modify field encapsulation level size Date: Tue, 16 May 2023 09:37:44 +0300 Message-ID: <20230516063747.3047758-5-michaelba@nvidia.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230516063747.3047758-1-michaelba@nvidia.com> References: <20230516063747.3047758-1-michaelba@nvidia.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000C984:EE_|SA1PR12MB7409:EE_ X-MS-Office365-Filtering-Correlation-Id: a577ea9c-86bf-42e5-05e7-08db55d81c24 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: nZa/ZTawxvJHJ8oBH69ipkXsP7J1XK5Ijrc0ypCdfm21akeXDCYovNwiwEhaWw1Hgvh9M8itiKFfB6ekH32iPYvRQ7MnbmVkyuiP95yGSqsUKmhfmQ6D/MHa/w/tOZrWJ0C94ajRz1B7kg8Mf6UM0E/kiq53NJR052PjSoeuSvi7Dx5GVdUf55GXC7wBA31ezV5ezyzeOpQDHyiJXTdt383lHHSJbCV7hObs2FkGch1lXFZlt9sLSf+HLn443bdlJtj/vzKHozP1xeuZoKl2vKIk981N9RMdon8oRsckJYF32Fz7kaW9xz2K2CTGuPY9UpkVL51nKgCDQuPdHRdeTj+0s3ljxoqE0ODPd+K7MIDqX3KtH8Pr+bay5hwJTfzQ+T+rXwVWPmlyi656LtqiFgCCtC8f2G6QS6p62KV5F4sEN49y+hdHT7L+/SB3aHyUcU027AWzPSVE4fP0lGvPxbby3eFEkcPnS8HllnTDcMpeBpIxBtq1buMFV4zII0ei4ABoBJk4Aegeri5dvDshuXb5Pj3x2WNjVP5lrdiQum3ROM7QeOIOz/8bQKE5LcCCaVYCVsQIKgVbd/PKredlHT3z1PBnilUaAkql5OXS3E8F7p4BdcV8Z2rfRXwfdUMw96R14Ehv87JnOUxnSbHaNHjpcCv/F5HrHCa5WD/aUFxlRwyMvY5POzaS+BBmTNSuelyseqF0UKj03tnYbydO2F6QQ0nmoKqQelZ3RQo9iZA= X-Forefront-Antispam-Report: CIP:216.228.118.232; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc7edge1.nvidia.com; CAT:NONE; SFS:(13230028)(4636009)(136003)(376002)(39860400002)(396003)(346002)(451199021)(36840700001)(40470700004)(46966006)(83380400001)(36860700001)(47076005)(336012)(426003)(478600001)(6666004)(7696005)(54906003)(2616005)(1076003)(26005)(6286002)(186003)(40460700003)(2906002)(36756003)(4326008)(70206006)(82740400003)(6916009)(70586007)(7636003)(356005)(41300700001)(8676002)(82310400005)(8936002)(316002)(55016003)(86362001)(40480700001)(5660300002); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 May 2023 06:38:07.5539 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a577ea9c-86bf-42e5-05e7-08db55d81c24 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.118.232]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000C984.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB7409 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 type of "level" field in "rte_flow_action_modify_data" structure is uint32_t for now, but it is going to be changed to uint8_t in the next patch. For representing encapsulation level, 8 bits are more than enough and this change shouldn't affect the current implementation. However, when action template is created, the PMD requests to provide this field "fully masked" in action mask. The "fully masked" value is different between uint32_t and uint8_t types. This patch reduces all modify field encapsulation level "fully masked" initializations to use UINT8_MAX instead of UINT32_MAX. This change will avoid compilation warning after it will be changed to uint8_t by API. Signed-off-by: Michael Baum --- drivers/net/mlx5/mlx5_flow_hw.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/drivers/net/mlx5/mlx5_flow_hw.c b/drivers/net/mlx5/mlx5_flow_hw.c index 7e0ee8d883..1b68a19900 100644 --- a/drivers/net/mlx5/mlx5_flow_hw.c +++ b/drivers/net/mlx5/mlx5_flow_hw.c @@ -3565,7 +3565,7 @@ flow_hw_validate_action_modify_field(const struct rte_flow_action *action, return rte_flow_error_set(error, EINVAL, RTE_FLOW_ERROR_TYPE_ACTION, action, "immediate value, pointer and hash result cannot be used as destination"); - if (mask_conf->dst.level != UINT32_MAX) + if (mask_conf->dst.level != UINT8_MAX) return rte_flow_error_set(error, EINVAL, RTE_FLOW_ERROR_TYPE_ACTION, action, "destination encapsulation level must be fully masked"); @@ -3579,7 +3579,7 @@ flow_hw_validate_action_modify_field(const struct rte_flow_action *action, "destination field mask and template are not equal"); if (action_conf->src.field != RTE_FLOW_FIELD_POINTER && action_conf->src.field != RTE_FLOW_FIELD_VALUE) { - if (mask_conf->src.level != UINT32_MAX) + if (mask_conf->src.level != UINT8_MAX) return rte_flow_error_set(error, EINVAL, RTE_FLOW_ERROR_TYPE_ACTION, action, "source encapsulation level must be fully masked"); @@ -4450,7 +4450,7 @@ flow_hw_set_vlan_vid(struct rte_eth_dev *dev, .operation = RTE_FLOW_MODIFY_SET, .dst = { .field = RTE_FLOW_FIELD_VLAN_ID, - .level = 0xffffffff, .offset = 0xffffffff, + .level = 0xff, .offset = 0xffffffff, }, .src = { .field = RTE_FLOW_FIELD_VALUE, @@ -4583,12 +4583,12 @@ flow_hw_actions_template_create(struct rte_eth_dev *dev, .operation = RTE_FLOW_MODIFY_SET, .dst = { .field = (enum rte_flow_field_id)MLX5_RTE_FLOW_FIELD_META_REG, - .level = UINT32_MAX, + .level = UINT8_MAX, .offset = UINT32_MAX, }, .src = { .field = (enum rte_flow_field_id)MLX5_RTE_FLOW_FIELD_META_REG, - .level = UINT32_MAX, + .level = UINT8_MAX, .offset = UINT32_MAX, }, .width = UINT32_MAX, @@ -5653,7 +5653,7 @@ flow_hw_create_tx_repr_tag_jump_acts_tmpl(struct rte_eth_dev *dev) .operation = RTE_FLOW_MODIFY_SET, .dst = { .field = (enum rte_flow_field_id)MLX5_RTE_FLOW_FIELD_META_REG, - .level = UINT32_MAX, + .level = UINT8_MAX, .offset = UINT32_MAX, }, .src = { @@ -5677,12 +5677,12 @@ flow_hw_create_tx_repr_tag_jump_acts_tmpl(struct rte_eth_dev *dev) .operation = RTE_FLOW_MODIFY_SET, .dst = { .field = (enum rte_flow_field_id)MLX5_RTE_FLOW_FIELD_META_REG, - .level = UINT32_MAX, + .level = UINT8_MAX, .offset = UINT32_MAX, }, .src = { .field = (enum rte_flow_field_id)MLX5_RTE_FLOW_FIELD_META_REG, - .level = UINT32_MAX, + .level = UINT8_MAX, .offset = UINT32_MAX, }, .width = UINT32_MAX, @@ -6009,7 +6009,7 @@ flow_hw_create_ctrl_regc_jump_actions_template(struct rte_eth_dev *dev) .operation = RTE_FLOW_MODIFY_SET, .dst = { .field = (enum rte_flow_field_id)MLX5_RTE_FLOW_FIELD_META_REG, - .level = UINT32_MAX, + .level = UINT8_MAX, .offset = UINT32_MAX, }, .src = { @@ -6182,12 +6182,12 @@ flow_hw_create_tx_default_mreg_copy_actions_template(struct rte_eth_dev *dev) .operation = RTE_FLOW_MODIFY_SET, .dst = { .field = (enum rte_flow_field_id)MLX5_RTE_FLOW_FIELD_META_REG, - .level = UINT32_MAX, + .level = UINT8_MAX, .offset = UINT32_MAX, }, .src = { .field = (enum rte_flow_field_id)MLX5_RTE_FLOW_FIELD_META_REG, - .level = UINT32_MAX, + .level = UINT8_MAX, .offset = UINT32_MAX, }, .width = UINT32_MAX,