From patchwork Thu Jul 29 14:00:17 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Kozlyuk X-Patchwork-Id: 96412 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 5E7EFA034F; Thu, 29 Jul 2021 16:00:40 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1670540DFB; Thu, 29 Jul 2021 16:00:40 +0200 (CEST) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2040.outbound.protection.outlook.com [40.107.237.40]) by mails.dpdk.org (Postfix) with ESMTP id E2CC440687 for ; Thu, 29 Jul 2021 16:00:38 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=McUBOg6lfLxm6FjCVOX48Lp4O+0YqmrjiYgeWyriRhHXRegbjSfRO2QI5LGO5HAX1RJ8y90eDerEStZi6CI9+4O5bfpKl6xJZwxMGgYkWxomTGm1RruJkHjf8cMjqkRIck8uOLApF/mkQMYl9c/dlusc19pvuPr4EOC3w15Mtqg3PlBnCsVjVHiSS+0yNVCrDuk0FarBxVDnL6TizbYYj9Ot61rwR3ELNPACKilc60EuguSH2AdUf1o1SrrIEWqK6abj8ZCqZAVgUsl6V0zcZLwnms9QC0rL8dSUdtZmW5gRxFcvH+lesfdi4fnb86UG+GDO69swq6a3W0CuEyhBHg== 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=PuIc4S4qVwwN0XCdpAS8BC3wShneQ82GH5dRZ9ofHws=; b=J6zuQMkErQYmD57EVJv7a3DbHcpIG3w8ZZ+zgIkVl4Upb9t5hluUSQ+KULPZCA7gA9xBksJuoewEWhTgMfAnzM6dYgDtfB1kgd9WrERvz4UPU/LP6EBTwtNFrNT+LAiWtSGGW5VcezTnEWtmW0bWb+8JkEKF7yVyUgzVhv90eLth5lkKYOBmisPXoUudB9c23kRn/UB5dMn/P0m9q7Le6aboX9L49gIDUMg0I4kLigwl5TTP3ipq917QzbqqZz+7IsDBe1s1S1Yd2HNDmb2WUbjohafs+cS7hkmG3Eqbmj3K7nccqzFkB6GsIKsL7X29IIUAn08M8vLHzCgkuol5yQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.112.34) smtp.rcpttodomain=oktetlabs.ru smtp.mailfrom=nvidia.com; dmarc=pass (p=quarantine 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=PuIc4S4qVwwN0XCdpAS8BC3wShneQ82GH5dRZ9ofHws=; b=DVmCLGxOuEW9p3lLgdmZZSIodq7+s/TAo8rQ25q2R3unv+XKhtFPZA1ikwTpHSHgp/5tKpySfEIdb8vLv1DZeKgPKL8smLGKnfRkAyXcrGu6mY5H+zgYQEG1IDNwKOWTVCiBLt03RDZ1b71WSVofK7gWV3Sv9LZulFDvBrmNR4+bY8Zo33d8Wx0ZqOKKwpSZXaRyUYV496nxMM3pVAK7tAPVGO1o/hhXHPFXPJh9EofR6j4HPW5LIeElYoh7EfpYp+VdBbpu64ElcMwYkMlPAajzezf4ccwXsbyaP4mnlNJbxxDMBNe38BDuJntyjM3aHbbQt1RaTcEJv7FCGi0E3Q== Received: from DM6PR02CA0062.namprd02.prod.outlook.com (2603:10b6:5:177::39) by SN6PR12MB2782.namprd12.prod.outlook.com (2603:10b6:805:73::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4352.29; Thu, 29 Jul 2021 14:00:37 +0000 Received: from DM6NAM11FT056.eop-nam11.prod.protection.outlook.com (2603:10b6:5:177:cafe::ac) by DM6PR02CA0062.outlook.office365.com (2603:10b6:5:177::39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.18 via Frontend Transport; Thu, 29 Jul 2021 14:00:37 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.34) smtp.mailfrom=nvidia.com; oktetlabs.ru; dkim=none (message not signed) header.d=none;oktetlabs.ru; 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 DM6NAM11FT056.mail.protection.outlook.com (10.13.173.99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4373.18 via Frontend Transport; Thu, 29 Jul 2021 14:00:35 +0000 Received: from nvidia.com (172.20.187.6) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 29 Jul 2021 14:00:33 +0000 From: Dmitry Kozlyuk To: CC: David Marchand , Andrew Rybchenko , Ori Kam Date: Thu, 29 Jul 2021 17:00:17 +0300 Message-ID: <20210729140020.1077946-1-dkozlyuk@nvidia.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210727073121.895620-1-dkozlyuk@nvidia.com> References: <20210727073121.895620-1-dkozlyuk@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [172.20.187.6] X-ClientProxiedBy: HQMAIL105.nvidia.com (172.20.187.12) To HQMAIL107.nvidia.com (172.20.187.13) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 204a1ffe-ea26-4dc5-0e82-08d952993d4e X-MS-TrafficTypeDiagnostic: SN6PR12MB2782: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7219; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IgbZNmvYeaHaPIQxbkriP0sXz5TAP+tJVPC5pxEP68g5rCQOvM9r3VvNkzHf3ksd56RJ3NnGF8oae9SbiYe/8RcHf0uSAtwka+Iw4MmakEq7vsoE5wZ8jeHHnajCaUDtMIp9Kj6bBUzyQ48CsxNQQ6IAluh3tZDMEP9ch27UcZ/6MyCBVbX320umIOhLoGjjjkmal9pViAyIxI9cTqsykGI4Zk8D+DkcTBM/JlRcAPhk1gnrw4cYB4TnbGAGkf8pFsGhHxazxsAMMbIusZTxI3WLLB8M5RlDAEc1JegcRXFMiyO7g7WKtBaSCLxsm9Ob6ddw5svdVR9fSV09+VXH7Away058mb5GHJhoazfiy2gHp9Oagy+AYVzAMjGv/XodJKwvnV8DRV1yUwytrbUJhZGoKKypdYSq+WMcFvV+7YWVPqHxjB7EKjJNxHwVkjDZHXvXB9TXwcF22gIUhUhC2WaAEs3MMhzOZMrJrU6JsN+3tW6CHMC8v7+9q3zrOTlId+gzx4pf1LzxxkJR+mwGaBsQtGgtKoa6foTZEpRXmMtiAAOu/uXa+CSkPBoKe8epeqeKDcPo1penAVVpc0mSiIsMfRu9OZBBdTd1kIOAJtAIj03QyOskQRYe9x8bfEY+UlZxWaFaETrPueijHK0QE5wZo9oj8RKDHrSoYSn11wyz3UZFT0drBG9LLBPx0hRc51PWHKyFqw59mlpi3JE0RA== 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)(376002)(346002)(396003)(36840700001)(46966006)(2616005)(478600001)(426003)(316002)(82310400003)(2906002)(82740400003)(6666004)(86362001)(356005)(70206006)(55016002)(70586007)(36860700001)(36906005)(54906003)(8676002)(83380400001)(186003)(36756003)(6286002)(6916009)(26005)(4326008)(5660300002)(47076005)(16526019)(7636003)(336012)(8936002)(7696005)(107886003)(1076003); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jul 2021 14:00:35.8667 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 204a1ffe-ea26-4dc5-0e82-08d952993d4e 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: DM6NAM11FT056.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR12MB2782 Subject: [dpdk-dev] [PATCH v2 0/4] net/mlx5: keep indirect actions across port restart 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" It is unspecified what happens to indirect actions when a port is stopped, possibly reconfigured, and started again. MLX5 PMD, the first one to implement indirect action API, intended to keep them across such a sequence, but the implementation was buggy, This patcheset fixes it. There is no consensus yet what behavior should be specified for all drivers, so current behavior is described in PMD docs. Dmitry Kozlyuk (3): net/mlx5: discover max flow priority using DevX net/mlx5: create drop queue using DevX net/mlx5: preserve indirect actions across port restart doc/guides/nics/mlx5.rst | 8 + drivers/net/mlx5/linux/mlx5_os.c | 5 - drivers/net/mlx5/mlx5_devx.c | 204 +++++++++++++++++--- drivers/net/mlx5/mlx5_flow.c | 292 ++++++++++++++++++++++++++--- drivers/net/mlx5/mlx5_flow.h | 6 + drivers/net/mlx5/mlx5_flow_dv.c | 103 ++++++++++ drivers/net/mlx5/mlx5_flow_verbs.c | 77 +------- drivers/net/mlx5/mlx5_rx.h | 4 + drivers/net/mlx5/mlx5_rxq.c | 99 ++++++++-- drivers/net/mlx5/mlx5_trigger.c | 10 + 10 files changed, 674 insertions(+), 134 deletions(-)