From patchwork Mon Jul 3 21:22:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Kozyrev X-Patchwork-Id: 129222 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 EEE4A42DC6; Mon, 3 Jul 2023 23:22:47 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7D6B240151; Mon, 3 Jul 2023 23:22:47 +0200 (CEST) Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2084.outbound.protection.outlook.com [40.107.92.84]) by mails.dpdk.org (Postfix) with ESMTP id 7B934400EF; Mon, 3 Jul 2023 23:22:46 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d1n+5W9aRqpPn4+5KgvwnO5BPiocgf50nVbix+X6ByKiPaQvmgbSpAY2/x6BHzgfsqf/TlYhQV12S+1sSl22pX1tPzPG67Mj3HiahO2xWRoki0D3q9EYNVUerpFl1kx/pMWwIblm51/ctCwBRJ5PRFWv1galJZVV1lyasCAMHFYIvF8+R3FZq74bpm1hLbzXdjqbOnnIMJp+hAAKct8U3N+uUrWlx6iyYrQoq7/EIJjFJRP/cNwrMiC8YS/8L/kIsPXU0A1QSXkAlAH41Khj/vnso6guxAg1hgweuUzLtABlDcFcVngQRx9bGRMILi2Q1mU4BbyAT264M9ZuGlf5Yg== 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=bvGypcwiN2EwnUyRDZJ4EdaKbRuKhaKqt8cx+w52nrU=; b=KCUR0EGNtzbVJ5ArBgsqTiqQYNkCr0nE3Ytq7hvdLTeNG2OP1u9s2zCgk2LYNsQOwA041Z4wpfXlXMNixw9KOA9nEc6KF87ug6vDnVjZGryntSPsJqnzejgDzD9JAqicDY/SQfICVopZ86jOMBmz+NvCNN+KYRSAU0ucZjCccwQVSLjDIDE/gCvlE6EVA9GdWYvSDnW2pAnsvfT7GM2yE2IcSmpZSo2Qm6CmV/Gkwp84dmq07rh+s1yZMDbFiZfHXhKsVK2Li83ISuM6MI7EkMnudKWpCXospN17oTwFAzVoWkeFgKG+hSXDYWDAI+saBndiDqzl3n9cxw9rM6GPpw== 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=bvGypcwiN2EwnUyRDZJ4EdaKbRuKhaKqt8cx+w52nrU=; b=quAEFigPqX22CfBUA+5FL8LgvaFI/14aNs/xKjuJGLBw2z98XzuH4S4EkHNOeMKXzB1o9fx7qmFF7u2CrSY21LUq6t6sPAo3FE8ZkOzManw+CSbSb1FCXgNZAhhGdUdIQNOtZOzHGjnKrHDuUqBAcGd+JBKGuBWrkmRFCpAGpN8aR3bACuKFqqAkeXzUOemLBlcMk2AoSV4RzDCCUcYLv1Nl6UZlykoUItlGiVrX0jF4+4XFOlmjxgbxBRh6J6TmHyPd4p4Nv7Xei0SLa0iA/2Ogy5OTruCVZ/yELO0n3dL81QLG7c4hgxz3hTzF4vjP4YYcy6ynZJQ6RoSvmgK4zg== Received: from DS7PR06CA0042.namprd06.prod.outlook.com (2603:10b6:8:54::23) by MW4PR12MB7166.namprd12.prod.outlook.com (2603:10b6:303:224::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.24; Mon, 3 Jul 2023 21:22:43 +0000 Received: from DM6NAM11FT008.eop-nam11.prod.protection.outlook.com (2603:10b6:8:54:cafe::ce) by DS7PR06CA0042.outlook.office365.com (2603:10b6:8:54::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.30 via Frontend Transport; Mon, 3 Jul 2023 21:22: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 DM6NAM11FT008.mail.protection.outlook.com (10.13.172.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.43 via Frontend Transport; Mon, 3 Jul 2023 21:22: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; Mon, 3 Jul 2023 14:22:40 -0700 Received: from pegasus01.mtr.labs.mlnx (10.126.230.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; Mon, 3 Jul 2023 14:22:38 -0700 From: Alexander Kozyrev To: CC: , , , Subject: [PATCH] net/mlx5: forbid MPRQ restart Date: Tue, 4 Jul 2023 00:22:24 +0300 Message-ID: <20230703212224.2370414-1-akozyrev@nvidia.com> X-Mailer: git-send-email 2.18.2 MIME-Version: 1.0 X-Originating-IP: [10.126.230.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: DM6NAM11FT008:EE_|MW4PR12MB7166:EE_ X-MS-Office365-Filtering-Correlation-Id: 1b958431-cd99-4cf2-7473-08db7c0ba3bf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: vcUujsCpHuF5jx4hFlNNI3e9CpfZyrqv0zl0ufXEKTJL0C9496zUAitWbCPDvS2MEgMEFtSPpRu+cT0g2G4zH72EIqG5dakzmM8S/lUOnIOSc7g0Bb2T2z1DjlkWOYp/zU983TnTPBGWQaoS4yCIoncDK16wXusEzcCjLkcFFXeFos9ZCIG682coO9W+kaw6/VRKggK53ZRkdM2r5f2i6qxoBkofZ8L05NVrLm5Wy+WBP4zD2yrgQGrARDfRa9ktU8GFDNlGnu7z28L9btdSy0Vv4JPHTwfLqGDHjowXYb7S81lCzzDNxQniSmEhBJpxhVgDkOm8B3iApgVJO213jMCiiQ5ki8Z8356wQ3WYUCVQVH7q96zhHkZxzXMWQjtp9gsLS8PQ6mkwYwGQzWbjLcoq7ouWoXFpudBLR7uBUVCTir77OH3oVnEvPKYW7g2ICFaajifGRJNEDe2nYLavKeAHYKPkCmxmoukeqpm1NdMOpQ+XqukJ4MTz9TZaZIU9lIGdPLMnrg8XycBReKwKXWk060TdoXNMlMkZse1hDzXSK5h31I11HvxauCFZ6Gdsn3DmO9F6eVeuN84ngZB7rPRvv+piZ+gPYJp1s09l5IryJGnyQTPAhkNH/Y+DlKTYIeQwU1e54CWtas/fn39wYYaYmiUMiuwohqs0Z8fcWri9636Q6qraGxw03/cWSiu+wc68QT5x7/mb7H5heF0F1ya8T3N2L+e6dmPQv6aoOjo= 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)(136003)(376002)(396003)(346002)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(4326008)(70206006)(70586007)(6916009)(316002)(36756003)(478600001)(2906002)(450100002)(8936002)(8676002)(5660300002)(86362001)(40460700003)(336012)(41300700001)(40480700001)(36860700001)(54906003)(82310400005)(6666004)(16526019)(1076003)(186003)(47076005)(26005)(426003)(82740400003)(2616005)(7636003)(83380400001)(356005); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Jul 2023 21:22:43.5212 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1b958431-cd99-4cf2-7473-08db7c0ba3bf 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: DM6NAM11FT008.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB7166 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 queue restart is only supported by the non-vectorized single-packet receive queue today. Restarting MPRQ will result in corrupted packets because of CQE and WQE mismatch. Prevent this by not allowing the MPRQ Rx queue stop. Fixes: 161d103b23 ("net/mlx5: add queue start and stop") Cc: stable@dpdk.org Signed-off-by: Alexander Kozyrev Acked-by: Viacheslav Ovsiienko --- drivers/net/mlx5/mlx5_rxq.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c index ad8fd13cbe..b314c0482b 100644 --- a/drivers/net/mlx5/mlx5_rxq.c +++ b/drivers/net/mlx5/mlx5_rxq.c @@ -531,12 +531,12 @@ mlx5_rx_queue_stop(struct rte_eth_dev *dev, uint16_t idx) * synchronized, that might be broken on RQ restart * and cause Rx malfunction, so queue stopping is * not supported if vectorized Rx burst is engaged. - * The routine pointer depends on the process - * type, should perform check there. + * The routine pointer depends on the process type, + * should perform check there. MPRQ is not supported as well. */ - if (pkt_burst == mlx5_rx_burst_vec) { - DRV_LOG(ERR, "Rx queue stop is not supported " - "for vectorized Rx"); + if (pkt_burst != mlx5_rx_burst) { + DRV_LOG(ERR, "Rx queue stop is only supported " + "for non-vectorized single-packet Rx"); rte_errno = EINVAL; return -EINVAL; }