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 8A939A0548; Tue, 27 Apr 2021 12:44:22 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id EE05940142; Tue, 27 Apr 2021 12:44:21 +0200 (CEST) Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2071.outbound.protection.outlook.com [40.107.220.71]) by mails.dpdk.org (Postfix) with ESMTP id 0187A4003D for ; Tue, 27 Apr 2021 12:44:20 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PIIXhCm+3ru48LuakcjT2wFYaS0OHfImE0dAw07UXs5bsOLW7529wY+lSHecK4sLhhg9OPXa8Jr1Q5HWeXRmErgZQ1ZUbbse3rxyA8WhpyRT/cwXLhjScL7yyClNLD0Bq5ir7wnpwdyw3uYbJx/BRdr8Clw1s7iRAq0E+3qjcYWJ20ZGx1ssehHQdjY/+N1F9v28/wkdNGqwL2XSo9HcRzUuGN39BGDtkJRUcxankNntZCTkuSanSqQsbm7d7YC+PjmWMo4OUnHT4N+KLS1BOMC64r3idz57HjEzSWow29/2qqxJkK+agTr+lEy1Gyw56EURwnFFzl8b4WhYYW5H+g== 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=vcUPzalMNad8c8ALl2eJSYGmTn3E0IP/oCPo4/vXqjI=; b=OTvdHS2Aul8PTvYsV+S6QywXPxLHZbbPXqptIM5PR6mqUpffcJKjPiFO5EvshVBukQZGEuOwg7h3Ysk5zHZtdm9GJgdnT1KSRzLww5t9KTqLTrDUNX5TKy5DBw6bsRoyGhznxp5V+LCJrNnvZc4Iy2WRva2zgeXXU48rCfrhqfWTOXCldVjEOSYuf3kH4ze1+nmrd6s8B3pnDD5RmP/BG3SDSWd1myR39gKr/alfbBz7M2mYR9QdOL8DOwzoc7LB16NOL/M+qKBCVr0DTwt8lvyoZ9YYfySVV0g+t8wZcjFj+diFQTSjO0Cq3JlMQRhRyNDu8kzXeCJ45H1T19eIgQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.112.34) smtp.rcpttodomain=monjalon.net smtp.mailfrom=nvidia.com; dmarc=pass (p=none sp=none 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=vcUPzalMNad8c8ALl2eJSYGmTn3E0IP/oCPo4/vXqjI=; b=KX1kn4D7k02pOW6V6qIMaaqqH9RH52aNKxfS8lQgFOzKLWkNro/rnVU5BAKUQ4tx/WjKDusyAGmpwXW7dFw518OXqbRVWMwvCy+L72J5l5q//1/1jlaDRkIZfuix9/XMiFaFd2Y/igd0CVzzyWxM5OqUBrxVW8lOttvmdJYIXCEXWO+6wzc6s9LBa3CQKCx//VOwAkEKKVsS9x6C8UZvyEXlDiq7HOlNIHC9nTucBU2XiDX4W5AguMHN2mJtDm1agE3LQCp4BVZAz4rRNDmON9YzwLbZL5/8HngjjBi3BEx/ojwwiZtynP8buFemeD3HM8JhlilXsua0mipHTT/x3w== Received: from BN9PR03CA0688.namprd03.prod.outlook.com (2603:10b6:408:10e::33) by BY5PR12MB3843.namprd12.prod.outlook.com (2603:10b6:a03:1a4::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Tue, 27 Apr 2021 10:44:17 +0000 Received: from BN8NAM11FT059.eop-nam11.prod.protection.outlook.com (2603:10b6:408:10e:cafe::84) by BN9PR03CA0688.outlook.office365.com (2603:10b6:408:10e::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.22 via Frontend Transport; Tue, 27 Apr 2021 10:44:17 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.34) smtp.mailfrom=nvidia.com; monjalon.net; dkim=none (message not signed) header.d=none;monjalon.net; dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.112.34 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.112.34; helo=mail.nvidia.com; Received: from mail.nvidia.com (216.228.112.34) by BN8NAM11FT059.mail.protection.outlook.com (10.13.177.120) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4065.21 via Frontend Transport; Tue, 27 Apr 2021 10:44:17 +0000 Received: from nvidia.com (172.20.145.6) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Tue, 27 Apr 2021 10:44:14 +0000 From: Li Zhang To: , , , , CC: , , , Date: Tue, 27 Apr 2021 13:43:50 +0300 Message-ID: <20210427104354.4112-1-lizh@nvidia.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20210401081624.1482490-1-lizh@nvidia.com> References: <20210401081624.1482490-1-lizh@nvidia.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [172.20.145.6] X-ClientProxiedBy: HQMAIL101.nvidia.com (172.20.187.10) To HQMAIL107.nvidia.com (172.20.187.13) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: ad8bca52-4a2d-45c3-3218-08d90969684f X-MS-TrafficTypeDiagnostic: BY5PR12MB3843: X-LD-Processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rcB2ojKxEuXqqXIOlmuYOSLxINHCE1LSR+StlOfOn3dXa1vq2JZUWKzYTeThnRKVVUMH/Kbup6VnHW5Y8QDlQac47nveIYkWaN30gnTbU15jb88qzwIkkQBm6FGTO7WufZvLln7M1J4OylA2Vr2R/HOvu8sDcNZgebnlUtJl2odQKiEJPUNQ+Qdisuj7uBdwDHze6FgCcANDEhEvjFb6tMw4cHK++vYqWR2sCw2yWq4wYR4DIS2FeXdCakBWlVPGMMGSc+1X0ycNztklXDLQmnhNPMoREm+rKhi+MHIZeDMv5rJCrPzzd4qDBQh38Bv/jB77RLCQ+9ZVuJAynQuURxZh9Cy4xFM1BLgGtBcShHmBAr3E6cnNVOACMb4b82Sf28mJW1yYvq6md35T1KejEqbgVn3KwWbSeQKc4JFQJrLZKrDGiaVbUWC65anGqELdgtMV2m4hlxI+UvFEr4FmQ++OoJqObMjRlcgycfIlb6UHyqVh0rsQMOBihRyZhi9kRc8wMGulWL0qABRPU7T4PYxqGxBtpLQSuAqbMSZLbjtMFmZI35iVAg1Iqlu69UC6YYbEw94ksTCVsdO/ZvPtjFpWvZeBkzFYk05je9CJa0xMH0QXD7w/LfE2X+S7Jp29f4IdZ2GXtMxfLO8Ku3QK5Oy1n/psOpaot+9QzMwj4W09y/3KQxdPOHnkehws2RWk+w098c5FTpTjWwuM+1o19bEbWDQPXKV6g/KmNQZVga4= X-Forefront-Antispam-Report: CIP:216.228.112.34; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:schybrid03.nvidia.com; CAT:NONE; SFS:(4636009)(136003)(39860400002)(396003)(376002)(346002)(46966006)(36840700001)(47076005)(107886003)(110136005)(82740400003)(54906003)(2906002)(478600001)(1076003)(6666004)(6286002)(7636003)(426003)(82310400003)(26005)(55016002)(36906005)(316002)(186003)(36860700001)(336012)(16526019)(8676002)(8936002)(2616005)(4326008)(86362001)(70586007)(36756003)(70206006)(356005)(7696005)(966005)(5660300002)(83380400001)(6636002); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 10:44:17.2894 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ad8bca52-4a2d-45c3-3218-08d90969684f X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.112.34]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT059.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB3843 Subject: [dpdk-dev] [PATCH v8 0/4] net/mlx5: support meter policy operations 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 Sender: "dev" MLX5 PMD checks the validation of actions in policy while add a new meter policy, if pass the validation, allocates the new policy object from the meter policy indexed memory pool. It is common to use the same policy for multiple meters. MLX5 PMD supports two types of policy: termination policy and no-termination policy. The termination policy must have a fate action as in the policy actions, it can support QUEUE, RSS, PORT_ID, DROP, JUMP, MARK and SET_TAG actions if policy color is GREEN, also supports DROP action if policy color is RED. The no-termination policy uses policy ID 0 as default policy, it is created internal and cannot be changed by API. The default policy red action is drop, green action is jump to suffix table. Create this policy by policy API with green/yellow no action, red with drop action. One example in testpmd command: add port meter policy 0 g_actions end y_actions end r_actions drop / end Depends-on: series=16520 ("Add ASO meter support in MLX5 PMD ") https://patchwork.dpdk.org/project/dpdk/list/?series=16520 Depends-on: series=16524 ("Support meter policy API ") https://patchwork.dpdk.org/project/dpdk/list/?series=16524 V8: * Fix comments about release-note v7: * Rebase. V6: * Fix comments about Depends-on. V5: * Fix comments about destory meter on different ports. V4: * Fix comments about rte_mtr_meter_policy_add. V3: * Fix comments about Depends-on. V2: * Add MLX5_MTR_DEFAULT_POLICY_ID in MLX5 PMD. Li Zhang (3): net/mlx5: support meter policy operations net/mlx5: support meter creation with policy net/mlx5: prepare sub-policy for a flow with meter Shun Hao (1): net/mlx5: connect meter policy to created flows doc/guides/nics/mlx5.rst | 12 + doc/guides/rel_notes/release_21_05.rst | 1 + drivers/net/mlx5/linux/mlx5_os.c | 13 +- drivers/net/mlx5/mlx5.c | 77 +- drivers/net/mlx5/mlx5.h | 212 ++- drivers/net/mlx5/mlx5_flow.c | 654 +++++++- drivers/net/mlx5/mlx5_flow.h | 119 +- drivers/net/mlx5/mlx5_flow_aso.c | 10 +- drivers/net/mlx5/mlx5_flow_dv.c | 1895 ++++++++++++++++++++++-- drivers/net/mlx5/mlx5_flow_meter.c | 742 +++++++++- drivers/net/mlx5/mlx5_trigger.c | 1 + 11 files changed, 3373 insertions(+), 363 deletions(-) -- 2.27.0