From nobody Wed Apr 1 09:46:37 2026 Received: from BN8PR05CU002.outbound.protection.outlook.com (mail-eastus2azon11011002.outbound.protection.outlook.com [52.101.57.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1696D39B48D; Mon, 30 Mar 2026 19:41:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.57.2 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774899686; cv=fail; b=NO6G1d5fbMW4F7s7IDA1jVmbX+PCYsDhmhnQNRAEswm7qInJA4UEfYo89fpYrmOKDrSm6Iy/lsyeCISNyLoME0ju2HjtIPPZQIdOS2IrQ4ebV3491YAInXtYAgPHV32Ueh469GHmW3IjVxwkdafQdVlsGccoNa9kLrK6gI5GTRo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774899686; c=relaxed/simple; bh=LvENoU/m62D43LouEiVn+nopERqmFX7VLIlTMpNBDJY=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=NTyb27L0RzjCdG5fEDmJKR+na2lLC5WJwxrXcihzU3RxcXldQf5Krqs/5kfchCuA6a37U+j9LlW7Md95bNnD44ucRpLPHqBCMXYJ3npblSiyiEipIr24GjuIjSmYenC9VgQh3Mv6Sponfc+nGH53kcvNsbbtdef09sWirWMm264= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=Dqf32xEq; arc=fail smtp.client-ip=52.101.57.2 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="Dqf32xEq" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Qn0isgcvsisoUyQfMY9uvgq+VRzOLOuOrPpPAz3qx1nq62GEQeU1cNB0wE0jaWBBkvpL1LYOguX1AkKOEMdaGXToDgxXLv0PAw1vJsvI+u55wswan/T3Z/TVPsM03F8LVcUo5z3Vu/mQWbHDZ3CwrYqm4xgARetC2xsnGzJxVuIBvcMQBeEnpAOPT4NZ19sxQcdYdsLsuEUk+6a1bCwNDFyE760p32N+ba/ndXpDPi5LIx+5yy45sdfHHYp0KcPNhdUDOj0F3atvFSdBPXnrgM8q2vIlzEpv1+Dtvqpzpnkj01v5rfaHdWvAVH71rWOCiaXSv8zE6D6BdYtHJKE+yg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=GK24S9mWOzyO6nRc/XSOQRnezgigEpil6WXqbRVSTp8=; b=T/snDtC2ro3SowDAybEH26TkPT29UyUbLoMWL6ep792e+gv3qeypFZHskgXxBXuQV8de+uKLRh841run9m9qnKMZWWw5gn7K0Pua3OWCyNK+iTHTD2iFtCYrXJH192xN7OiYM7m8zBoce3/Vlzad2Gn83klcHIGh+DPegUVlTCQbrf3DkB5CoMV34+ismQ2HIJOoAHqLF2GpqvaGzCC5lT8M3JO4lOM/tbags2DnuCE1xL/ReDoTMDwyQWvEqEcdPYdIacyN/UxV2K7sm3aAB5lJV4R4ql/hF1XWEQxi4DojeynzD5nbS9EuJbpgFal2OEsum3CE/8Kqz51Aks4f+w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.233) smtp.rcpttodomain=google.com 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 (0) 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=GK24S9mWOzyO6nRc/XSOQRnezgigEpil6WXqbRVSTp8=; b=Dqf32xEq6lWIZvPq1ogwKzYoiiiK9b+ax+OikQZ7lQlyOqWISiXHLQeEcghgNPKkcVEC5duBuuVwDjhn864UDqAkEoLN53zF97J6dzP4qFKUowtshC2o+jHteyXBegglu5X7gqwG7ehfKhnifMTjNv5u9XWankM4qeOuwhMH8B5kbtKDhKxIZULMsp/pHN0MujR2KNxPGZ+Bh/YprvmWwCY8tyADI1cYjb31wG3z/kURXQNzCo/em6en4vSglfMEeY+Tt4F2tRJbVp/hfCxpiS+hJYW63fHc8SQXJpqdNQGOGLuiFRv3TmxciuPUivk4zlQSK6MIVvv2wR5PosHh0w== Received: from MN2PR05CA0046.namprd05.prod.outlook.com (2603:10b6:208:236::15) by CH3PR12MB7497.namprd12.prod.outlook.com (2603:10b6:610:153::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.15; Mon, 30 Mar 2026 19:41:19 +0000 Received: from BL02EPF00029927.namprd02.prod.outlook.com (2603:10b6:208:236:cafe::8c) by MN2PR05CA0046.outlook.office365.com (2603:10b6:208:236::15) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9745.28 via Frontend Transport; Mon, 30 Mar 2026 19:41:17 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.118.233) 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.233 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.118.233; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.118.233) by BL02EPF00029927.mail.protection.outlook.com (10.167.249.52) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.21 via Frontend Transport; Mon, 30 Mar 2026 19:41:17 +0000 Received: from drhqmail203.nvidia.com (10.126.190.182) by mail.nvidia.com (10.127.129.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Mon, 30 Mar 2026 12:41:02 -0700 Received: from drhqmail202.nvidia.com (10.126.190.181) by drhqmail203.nvidia.com (10.126.190.182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Mon, 30 Mar 2026 12:41:01 -0700 Received: from vdi.nvidia.com (10.127.8.10) by mail.nvidia.com (10.126.190.181) with Microsoft SMTP Server id 15.2.2562.20 via Frontend Transport; Mon, 30 Mar 2026 12:40:57 -0700 From: Tariq Toukan To: Eric Dumazet , Jakub Kicinski , Paolo Abeni , Andrew Lunn , "David S. Miller" CC: Saeed Mahameed , Leon Romanovsky , Tariq Toukan , Mark Bloch , Shay Drory , Shay Agroskin , Saeed Mahameed , Jianbo Liu , , , , Gal Pressman Subject: [PATCH net 1/3] net/mlx5: lag: Check for LAG device before creating debugfs Date: Mon, 30 Mar 2026 22:40:13 +0300 Message-ID: <20260330194015.53585-2-tariqt@nvidia.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20260330194015.53585-1-tariqt@nvidia.com> References: <20260330194015.53585-1-tariqt@nvidia.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL02EPF00029927:EE_|CH3PR12MB7497:EE_ X-MS-Office365-Filtering-Correlation-Id: 065c18ae-0520-4749-6a9d-08de8e944fd4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|1800799024|36860700016|376014|18002099003|22082099003|56012099003; X-Microsoft-Antispam-Message-Info: O1j9qjly/vIxLOp1ZtoNbLeNbHbtRGQgE+OlxG9wiOfjYboQg0Q6PkBnHE1SrChoGIv6OybYgr04gLD1uCKSXrNGSRt74iF6iHd2gNVRkjOtcIC8bLJMICwtw4hdQqYkrWfVO8/57uLq3mhCO7nty7+CmGzYkAzQhqfW6Zyw6U/tZ76dIlKQE9Wb87SjDxlYNEZoqWAs8YHI2wbvjBIwwgCCGOR5OuNIjWca9gSp0cCGwE7l6xeZsKR9Ez2C+boUACHeVuZQ/w/EIOaBFr9pcnMHuKIezzzvoQTWZYWaSYC6u3ncfR8wYr2pAwf4I7PBZZ7q/SFYZNVxk7XKVwiiqUC2zOCH5V9Dv6bQVfJ5G5WWxHK+quWmp2uEe7S7na7tJZXQkPcMl9b+Z3A/4H6lXTpsFXvj0OE9Qr62OAqmBXIqSMB5jJmQf2D1569jtgQwNnuws83gZY4lCZsjBCq/oM17HEeubIq05Mi70SfOByvkUWKlfMKF73x9bqdI/P27R1rQ6Wyj45X7m4xboHKQ+ROjloGPn/5k8rgbE2xpGMH62K5ukRuQtRm8RcatHSqp1Bxo9xtew28UUj2rpGHDqxDp8rGetOm0sADKTx4TQPh0SvkBZiBKvARJORVwvWSTd3fySdj0fOvpMpGEzxGlOSAHDzhlWfb8lUw5xdrBfpZ5DPYYJY6DIYs0ZWAblKY5zsXY+z9lhcU/ykNt8qFp1rQiATPuHeFInXD+EcBDH5z9S3xqpyNtLzn+tmIiuxTNnyxexCawsShPc4Evles1yA== X-Forefront-Antispam-Report: CIP:216.228.118.233;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc7edge2.nvidia.com;CAT:NONE;SFS:(13230040)(82310400026)(1800799024)(36860700016)(376014)(18002099003)(22082099003)(56012099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: lZwcqUf3gm86DSlS883SvDBZZV04kJPaPzBvi2co+hOJgYorZjJsbZglk1K/fS5Jf2Ac5keMqB1CFGw4/4MLtbzqcmtTQv3CC7H4GxURXLJQ8pHCD+SAvEi6z/fliv8XoFJCJZddaDzKos+7wIxq1/ARskB/yLmSnqpXpZB7EKZWcXOcm7WYnmypBU1B1KRyyv23oxgZw3VwfE0wMUgyJzu0bYCY6BnR37gKM4kz6ZxzQrTQc+vT61T2euhIldG00aw8FD5VsIfO5I+v4xoMhkAaRKM/z94eT1mXv6LROR0wvJPLozbLXpo2r326An9t4GeVauVjG4nSSjGUNAq/Ds324KVfaPoYfXh771Nw9OofI+K7Ii6B6UlVrEK8yt1bdOXFzhaEiXQpAug6Sw5g9gXDEyUO277vbnUODjRO8GG+utt4y8O87U3nVD3ndM9s X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Mar 2026 19:41:17.6887 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 065c18ae-0520-4749-6a9d-08de8e944fd4 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.233];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BL02EPF00029927.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB7497 Content-Type: text/plain; charset="utf-8" From: Shay Drory __mlx5_lag_dev_add_mdev() may return 0 (success) even when an error occurs that is handled gracefully. Consequently, the initialization flow proceeds to call mlx5_ldev_add_debugfs() even when there is no valid LAG context. mlx5_ldev_add_debugfs() blindly created the debugfs directory and attributes. This exposed interfaces (like the members file) that rely on a valid ldev pointer, leading to potential NULL pointer dereferences if accessed when ldev is NULL. Add a check to verify that mlx5_lag_dev(dev) returns a valid pointer before attempting to create the debugfs entries. Fixes: 7f46a0b7327a ("net/mlx5: Lag, add debugfs to query hardware lag stat= e") Signed-off-by: Shay Drory Reviewed-by: Mark Bloch Signed-off-by: Tariq Toukan --- drivers/net/ethernet/mellanox/mlx5/core/lag/debugfs.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/lag/debugfs.c b/driver= s/net/ethernet/mellanox/mlx5/core/lag/debugfs.c index 62b6faa4276a..b8d5f6a44d26 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/lag/debugfs.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/lag/debugfs.c @@ -160,8 +160,11 @@ DEFINE_SHOW_ATTRIBUTE(members); =20 void mlx5_ldev_add_debugfs(struct mlx5_core_dev *dev) { + struct mlx5_lag *ldev =3D mlx5_lag_dev(dev); struct dentry *dbg; =20 + if (!ldev) + return; dbg =3D debugfs_create_dir("lag", mlx5_debugfs_get_dev_root(dev)); dev->priv.dbg.lag_debugfs =3D dbg; =20 --=20 2.44.0 From nobody Wed Apr 1 09:46:37 2026 Received: from DM1PR04CU001.outbound.protection.outlook.com (mail-centralusazon11010045.outbound.protection.outlook.com [52.101.61.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5350C37EFE3; Mon, 30 Mar 2026 19:41:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.61.45 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774899696; cv=fail; b=lzCy6NJfS6G6S5XUVPT8cMGXbVgzRQwzBgHsErIFBjfpWgKZRzXpgQGdlCfu5wUgjERSxZKdOpEnzfbkCBI3ue/C5OdNZmjS5CtORWnpalErObkXllZi2JC17wAtUwwH/Gw48IqIlrIN0/QRi2VlpgQ5ufPsczx2c0jnTG4CHWY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774899696; c=relaxed/simple; bh=3j5urw42CRoeEtlbD61/hWs4pabkf8qkXj9/CW69vbo=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=hejyFlaZESGCiQO6ckWje0Ql53XMqpnHk0nWktjJgyAkEmn8ePCuTq+ZRnVX1o3DSYzqgcZomKHxPWmyRlyc4dxKJzyq+Nx3NtLgUu3FB6ZT42IpHJLcYs3vDapE/wg+/8PWa4alGpH4IXT5uoTdYF2SMZDWM2drdUT9+dxeb+I= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=MBu+2rHu; arc=fail smtp.client-ip=52.101.61.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="MBu+2rHu" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ytuGmFPgi5SYSfUXrSgU3oLISq9KVQUyY9jDmEUkWwfx6ucq9eNPoQ2UnuGgfJcUF3Gl74+Ysrs/Ac+IElK9SJgy0K8McO2jbxfn2OYsR8keU4a9dZG9EUnMT1hWuc+btktkNOZGQcmaIdufnMCmLFVDu3wt7fgq6ouqljVBlLdvJr7ZZsGTfFgSspJZhNRBClxgicX4qP49JFbfTWJWf4xxgY2ZGC1qsl045y+aM8+Y0ptmL3WG2ctr75750DrizfLyEHIYepwcDTPOKV1eDm01PnDiPpDMVhbaV486B7/UKuGJxFEtc1sUSqc1uP/MfCvHdaddMaU2spr+7Y2/QA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=fOcbX8a5sv5GA3VBH6eGINd9LtJF7xmVHwWs1+y4Hd8=; b=C1I8aaeSWjOzbiuQX0NqU7OI5xNGVLd6nNyRuuMF9kRG2LLdkSSMwDm+m4bUiGNRUv/lirlln2l9MgVxgUEhPzm4mqZ4Zy46mVDxAJArK8nSZu9wgk/AjE//SFZs54h4IHRXieHQIj6nLdlAKM56IrR6lsuksulEwIWHHkFyMQzy4M+JTCrrW1pR+NlUmHuPrNPotU8xcE/+/9CM4piadLsHxZzTv9dTCMYXAkpBWy6If1AVVmsXL/jc2CXyjPZPZti6lWRZGfKOGM2346X0bv3POfFx9CwVSI8JxNci6FDmyW9rdAPG4Kae8IUmPlp1weUXnBC1ELiZruaNqClffg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.232) smtp.rcpttodomain=google.com 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 (0) 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=fOcbX8a5sv5GA3VBH6eGINd9LtJF7xmVHwWs1+y4Hd8=; b=MBu+2rHu1KH1RhQA6Li9wer3fqR0bqURdOorwiHIrV+Exd0Uxsj1hKA4hb8bGMsNYLO9dtDDcRwUaW4NpIzX2W6SfAJWle28wA2CpWEw/SGCoFW3srMQy49U3qO2imr6H7KFHUj1vRFXcLFZ56eNRxjtac3LwS5SDYijI8cXBO+rfpP2uPPl+X0ye/veGLh3OyQPMa0rUfIIAFgHU/tS0VScL2AzMvpILIw3IC8/WFCZeFpIOPYtT2Vb6yLmksgqyhx1rOMaRAAYtLVDmInKI1/fV5dtbI5AaknHi6SaNLGj81fGEeP/b62ARrwqA+lAbj4q/k384hgV/tgmQiXZ1A== Received: from BY5PR16CA0024.namprd16.prod.outlook.com (2603:10b6:a03:1a0::37) by CYXPR12MB9319.namprd12.prod.outlook.com (2603:10b6:930:e8::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.15; Mon, 30 Mar 2026 19:41:27 +0000 Received: from SJ1PEPF00001CE0.namprd05.prod.outlook.com (2603:10b6:a03:1a0:cafe::f4) by BY5PR16CA0024.outlook.office365.com (2603:10b6:a03:1a0::37) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9745.28 via Frontend Transport; Mon, 30 Mar 2026 19:41:28 +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 SJ1PEPF00001CE0.mail.protection.outlook.com (10.167.242.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.21 via Frontend Transport; Mon, 30 Mar 2026 19:41:27 +0000 Received: from drhqmail203.nvidia.com (10.126.190.182) 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.2562.20; Mon, 30 Mar 2026 12:41:06 -0700 Received: from drhqmail202.nvidia.com (10.126.190.181) by drhqmail203.nvidia.com (10.126.190.182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Mon, 30 Mar 2026 12:41:06 -0700 Received: from vdi.nvidia.com (10.127.8.10) by mail.nvidia.com (10.126.190.181) with Microsoft SMTP Server id 15.2.2562.20 via Frontend Transport; Mon, 30 Mar 2026 12:41:02 -0700 From: Tariq Toukan To: Eric Dumazet , Jakub Kicinski , Paolo Abeni , Andrew Lunn , "David S. Miller" CC: Saeed Mahameed , Leon Romanovsky , Tariq Toukan , Mark Bloch , Shay Drory , Shay Agroskin , Saeed Mahameed , Jianbo Liu , , , , Gal Pressman , Moshe Shemesh Subject: [PATCH net 2/3] net/mlx5: Avoid "No data available" when FW version queries fail Date: Mon, 30 Mar 2026 22:40:14 +0300 Message-ID: <20260330194015.53585-3-tariqt@nvidia.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20260330194015.53585-1-tariqt@nvidia.com> References: <20260330194015.53585-1-tariqt@nvidia.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ1PEPF00001CE0:EE_|CYXPR12MB9319:EE_ X-MS-Office365-Filtering-Correlation-Id: 68402263-de21-4ff5-fd30-08de8e94555d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|36860700016|1800799024|82310400026|22082099003|56012099003|18002099003; X-Microsoft-Antispam-Message-Info: iwwsK+WMdHbvk1QMibBnwdvlnEl5NAdF36J3oFi2ZbqCpPNSJGaZEGt6vxKMQlX/EmO7BpVQY+W6IJsGay9K9EdDANgsdZKja3ntWmLiAUPEk14f3Eh+l4U0Yk4XyO30VoWsTX7bVFtAlkJi5FurkNpV1DeG7qmbDxYG/HRFZlZLZ+pw4SIBwgShaaPyCZ5xccz424mK8cRMMOjD3Fi+7OZQnJt6W/8PlA70WiMlZ9TkNe/qNhCIU70sheULL4/3r4C2Unt/mpjO7M01r6gGhSCpy/tTnj27vHq6ZOOIxcbMFPKwKXrfU70zKG0jIt2Ntbufkj136TfX6xCUVK3VLUCuCmG1sSGC8angyKKMceV9xbi83YjYr7ZjD9Uvkn0HYEVQCGoNT9Hl5BAp2bZfNHLyZaZZbQIuSa7HdvoenpHuhCLCtz+i3uzjNyZyiST/b1WN/5T8zPBhlpF3tvoEOr4vAU2bAu7o8AK82deo+cxBgqgzF5az9UACJRI1qaGj23YgTH9CKMx+Jkiu0wYCYeaVbg3adQqCkN0aVaOdheQ7RfME3uGxQ9F7XBWZD5uqHRC3JLs6bYA4BYDrgnpj+UG2AmridjSCnT0In70glnZBxxS9MxpEPYmkx6q8O5Mj5j5c69sz29q0Axn/ljEIEHcr5JHqCgXyTOglwhLB1nY/ssm8KCDid06No90SzrCmOE+U2/rRY7wM3mrmYKCWKuVz/G9+V15h5XGCfAq/O5cvj3pv5yPcqwIUwXYvW36q7SmmgzZETLM/HDutKc6WvQ== 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:(13230040)(376014)(36860700016)(1800799024)(82310400026)(22082099003)(56012099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: Z57QEyjPNjhHey5+S9xKliFpjtn8QI96Q2yupBbRfAaBJekHG1vuxzI6+IOKBRENsx6TcHAEu1i79JY8pot8c+ijxOA6WRaqaV9C7sjK5eqZsx3jIUE+JKDND3uMw/DCJg4x4C7bewyOvj9Cj0VxXXepHn0WhieMv8RgBzKe2/aPhbzzqu2JprlvAW3MTLmas7QU9DYaPTFB0PEstaJf8qWtINe5sM0gh1S6kR8ksu6q5RwtnTigkbzESP1UrAqltO3+4J5p8zFmGBQB1YZ59EFJklUvB2kAzm6QRQIEVN1zS7fJBBjpSqPJ86qtwEJ7Es0bkKzbethjcCgleJqlIvtNnRNqD/92fOoF/1DvzV/dvobRTM1/eoUHXKARQQJAAiz257DiuTiNDaENFOp1C9+Pa+TInlckb8oEYYWr+93k5M8kSS5EIRt4qr3+zzom X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Mar 2026 19:41:27.1551 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 68402263-de21-4ff5-fd30-08de8e94555d 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: SJ1PEPF00001CE0.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYXPR12MB9319 Content-Type: text/plain; charset="utf-8" From: Saeed Mahameed Avoid printing the misleading "kernel answers: No data available" devlink output when querying firmware or pending firmware version fails (e.g. MLX5 fw state errors / flash failures). FW can fail on loading the pending flash image and get its version due to various reasons, examples: mlxfw: Firmware flash failed: key not applicable, err (7) mlx5_fw_image_pending: can't read pending fw version while fw state is 1 and the resulting: $ devlink dev info kernel answers: No data available Instead, just report 0 or 0xfff.. versions in case of failure to indicate a problem, and let other information be shown. after the fix: $ devlink dev info pci/0000:00:06.0: driver mlx5_core serial_number xxx... board.serial_number MT2225300179 versions: fixed: fw.psid MT_0000000436 running: fw.version 22.41.0188 fw 22.41.0188 stored: fw.version 255.255.65535 fw 255.255.65535 Fixes: 9c86b07e3069 ("net/mlx5: Added fw version query command") Signed-off-by: Saeed Mahameed Reviewed-by: Moshe Shemesh Signed-off-by: Tariq Toukan --- .../net/ethernet/mellanox/mlx5/core/devlink.c | 4 +- drivers/net/ethernet/mellanox/mlx5/core/fw.c | 53 ++++++++++++------- .../ethernet/mellanox/mlx5/core/mlx5_core.h | 4 +- 3 files changed, 37 insertions(+), 24 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/devlink.c b/drivers/ne= t/ethernet/mellanox/mlx5/core/devlink.c index 6698ac55a4bf..73cf0321bb86 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/devlink.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/devlink.c @@ -107,9 +107,7 @@ mlx5_devlink_info_get(struct devlink *devlink, struct d= evlink_info_req *req, if (err) return err; =20 - err =3D mlx5_fw_version_query(dev, &running_fw, &stored_fw); - if (err) - return err; + mlx5_fw_version_query(dev, &running_fw, &stored_fw); =20 snprintf(version_str, sizeof(version_str), "%d.%d.%04d", mlx5_fw_ver_major(running_fw), mlx5_fw_ver_minor(running_fw), diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fw.c b/drivers/net/eth= ernet/mellanox/mlx5/core/fw.c index eeb4437975f2..c1f220e5fe18 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/fw.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/fw.c @@ -822,48 +822,63 @@ mlx5_fw_image_pending(struct mlx5_core_dev *dev, return 0; } =20 -int mlx5_fw_version_query(struct mlx5_core_dev *dev, - u32 *running_ver, u32 *pending_ver) +void mlx5_fw_version_query(struct mlx5_core_dev *dev, + u32 *running_ver, u32 *pending_ver) { u32 reg_mcqi_version[MLX5_ST_SZ_DW(mcqi_version)] =3D {}; bool pending_version_exists; int component_index; int err; =20 + *running_ver =3D 0; + *pending_ver =3D 0; + if (!MLX5_CAP_GEN(dev, mcam_reg) || !MLX5_CAP_MCAM_REG(dev, mcqi) || !MLX5_CAP_MCAM_REG(dev, mcqs)) { mlx5_core_warn(dev, "fw query isn't supported by the FW\n"); - return -EOPNOTSUPP; + return; } =20 component_index =3D mlx5_get_boot_img_component_index(dev); - if (component_index < 0) - return component_index; + if (component_index < 0) { + mlx5_core_warn(dev, "fw query failed to find boot img component index, e= rr %d\n", + component_index); + return; + } =20 + *running_ver =3D U32_MAX; /* indicate failure */ err =3D mlx5_reg_mcqi_version_query(dev, component_index, MCQI_FW_RUNNING_VERSION, reg_mcqi_version); - if (err) - return err; - - *running_ver =3D MLX5_GET(mcqi_version, reg_mcqi_version, version); - + if (!err) + *running_ver =3D MLX5_GET(mcqi_version, reg_mcqi_version, + version); + else + mlx5_core_warn(dev, "failed to query running version, err %d\n", + err); + + *pending_ver =3D U32_MAX; /* indicate failure */ err =3D mlx5_fw_image_pending(dev, component_index, &pending_version_exis= ts); - if (err) - return err; + if (err) { + mlx5_core_warn(dev, "failed to query pending image, err %d\n", + err); + return; + } =20 if (!pending_version_exists) { *pending_ver =3D 0; - return 0; + return; } =20 err =3D mlx5_reg_mcqi_version_query(dev, component_index, MCQI_FW_STORED_VERSION, reg_mcqi_version); - if (err) - return err; - - *pending_ver =3D MLX5_GET(mcqi_version, reg_mcqi_version, version); - - return 0; + if (!err) + *pending_ver =3D MLX5_GET(mcqi_version, reg_mcqi_version, + version); + else + mlx5_core_warn(dev, "failed to query pending version, err %d\n", + err); + + return; } diff --git a/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h b/drivers/= net/ethernet/mellanox/mlx5/core/mlx5_core.h index b635b423d972..1507e881d962 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h +++ b/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h @@ -393,8 +393,8 @@ int mlx5_port_max_linkspeed(struct mlx5_core_dev *mdev,= u32 *speed); =20 int mlx5_firmware_flash(struct mlx5_core_dev *dev, const struct firmware *= fw, struct netlink_ext_ack *extack); -int mlx5_fw_version_query(struct mlx5_core_dev *dev, - u32 *running_ver, u32 *stored_ver); +void mlx5_fw_version_query(struct mlx5_core_dev *dev, u32 *running_ver, + u32 *stored_ver); =20 #ifdef CONFIG_MLX5_CORE_EN int mlx5e_init(void); --=20 2.44.0 From nobody Wed Apr 1 09:46:37 2026 Received: from DM1PR04CU001.outbound.protection.outlook.com (mail-centralusazon11010002.outbound.protection.outlook.com [52.101.61.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7973B39C657; Mon, 30 Mar 2026 19:41:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.61.2 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774899701; cv=fail; b=T6obDGKKd4v9hg/WCqsf+6uaPVNwwc5SG0rS/E192n4FIos9PX/LB6Cf5YLy/MopY4tlV3J+VqYB4IAbJv/tcJiPa4WkcJy+4Lk5Rz86TECIMQifseOpdzeI9JMtc5AmbhBOyo42xA2OcSbT7d1lpoQTLss5Z/1OLRmztAAeWt4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774899701; c=relaxed/simple; bh=3oLVVLGUTfyyl53Q/t4cBzCIcZnfl8DYPZt9ykD7yXI=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=B71geMBfoO5FzJqRlPEBx3+fDrkRCrEDbB59gEtNUdc1nBHc56UELkFPGuPQdcGbG2UZBCc+uPblJogIYZFs0bYf/gSCEZOK0bFLJwpoP2ntNQluBXGx9W5F1J3BCA/Zozb4wE6tMq/BOpLoMPqD8co6eRtIUVUbsPd/pjX+hMI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=nAfJJaLJ; arc=fail smtp.client-ip=52.101.61.2 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="nAfJJaLJ" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=oHAQirv07Smk99nNDSvyxbEQuNmRtRbZB/lsqZRuangV16ecFiWNPrt7UfRQPMNe5aYmGvof3sZ1j0cVke4WwzqSO5sowiwiHrQ48Uha4d89hJgdZc9qJZGr4iEqe83iqGaLcq8r1Ah7CSAkJvXFwbT6ixDnmhHoqm7vo7zWCteW0veG1w8aH71VKLmNqfPpHcbxUC2dGqcOcFNCy7xanTBMYv3kyTvJeB8+uEFx5Fgk2ICJvbMcB0y+rWWl7YNa6/pjPBygBcJg4/rkxAm7DqU2kSavyjfOcmIkKVBc43+R23jCCLUGs4gfqLLt2+l2AhJuJNRgR6GXvD+A+VbSzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=SM9auaHOrMZWp0CLBIt9tOkxvRY8sMgav07IBasu5Gw=; b=P4VRQ19Bxmg4XHbpfaR7kZy2IVIjro/v1+Be5USmJy4iSENXDyt+nrY9UGZt13jG4tl5UxGDme5GscnsmaRF12ccbndRG8nKkgbMVsEfERK3LySm7pM8AYYxdq/eUT2OH+Aq//ziwyd+tXqnFL6WMgu6OuhZLxe26T4lL8knkiV4MGDW5TwNqpBBE9xZj6xUICWP62PaYuY9qCeDxnH6KtHjaRXDd60fupsJ0Uar4/pk4iDg4Z6F5HVjQdJ2cPojyqi4O9XW0d9GFO3Svsjzj2AOC6Uzt1sM1gYSnbY0FnxVX5AW68LKjhVGrwzHqy89/bywN0CwYvBRHkRITkInXw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.233) smtp.rcpttodomain=google.com 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 (0) 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=SM9auaHOrMZWp0CLBIt9tOkxvRY8sMgav07IBasu5Gw=; b=nAfJJaLJdOWovpdTQMW1RbCIfGl4xF7F6xy5TCs6YDF6Q8Q8R7pVU5l5aXfKsjm3K30WORKUQcZz6QopGI++/FZRJsvb9DqxO0iAGdX/XdX/G3RoyMOFjK1jumve8w2E+g72jtR9oDkj1UEYTwFljq3rXtVjf51L/JnHDb/mEzviOpofe8YXY23cuNXtnUHJ46lAD39ZDdIYsQhARyD9+/HuagguAz/nTakfLTvxyBmbD0EJ2cKVR6fZZqmcZjteteVyxRtQgFDuo9BDktUkb9t8l/1RCxFYg+RmcebKaWfppf30i6xzcrK0pRUh2sFFf6F4SidIZH6BzjuCNtxngQ== Received: from BL1P223CA0007.NAMP223.PROD.OUTLOOK.COM (2603:10b6:208:2c4::12) by DS7PR12MB8420.namprd12.prod.outlook.com (2603:10b6:8:e9::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.15; Mon, 30 Mar 2026 19:41:31 +0000 Received: from BL02EPF00029928.namprd02.prod.outlook.com (2603:10b6:208:2c4:cafe::b2) by BL1P223CA0007.outlook.office365.com (2603:10b6:208:2c4::12) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9745.28 via Frontend Transport; Mon, 30 Mar 2026 19:41:31 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.118.233) 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.233 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.118.233; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.118.233) by BL02EPF00029928.mail.protection.outlook.com (10.167.249.53) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.21 via Frontend Transport; Mon, 30 Mar 2026 19:41:30 +0000 Received: from drhqmail201.nvidia.com (10.126.190.180) by mail.nvidia.com (10.127.129.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Mon, 30 Mar 2026 12:41:11 -0700 Received: from drhqmail202.nvidia.com (10.126.190.181) by drhqmail201.nvidia.com (10.126.190.180) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Mon, 30 Mar 2026 12:41:10 -0700 Received: from vdi.nvidia.com (10.127.8.10) by mail.nvidia.com (10.126.190.181) with Microsoft SMTP Server id 15.2.2562.20 via Frontend Transport; Mon, 30 Mar 2026 12:41:06 -0700 From: Tariq Toukan To: Eric Dumazet , Jakub Kicinski , Paolo Abeni , Andrew Lunn , "David S. Miller" CC: Saeed Mahameed , Leon Romanovsky , Tariq Toukan , Mark Bloch , Shay Drory , Shay Agroskin , Saeed Mahameed , Jianbo Liu , , , , Gal Pressman Subject: [PATCH net 3/3] net/mlx5: Fix switchdev mode rollback in case of failure Date: Mon, 30 Mar 2026 22:40:15 +0300 Message-ID: <20260330194015.53585-4-tariqt@nvidia.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20260330194015.53585-1-tariqt@nvidia.com> References: <20260330194015.53585-1-tariqt@nvidia.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL02EPF00029928:EE_|DS7PR12MB8420:EE_ X-MS-Office365-Filtering-Correlation-Id: 20a8d3f5-3347-4f9e-53f8-08de8e9457a9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|82310400026|1800799024|36860700016|18002099003|22082099003|56012099003; X-Microsoft-Antispam-Message-Info: xkpZC4yahJuD+S26tTIL4fsR9ZPrYkxXNTU8ZehhQ9mW1fXkErXpdSRKE4h79k9T96lVF/yk8QYIr/BVlw9qJ81iyWH4AxfRSAXP0WG4VJPtXz+gAUvYd0RXrpSOKUjyy9KNv4BwkvQsssBjINRE5ETp5kT53/4SmIbiWaTiuiSovYjLfTix2pLtiI4sy44BURtgzN5CELJr3WRcUnf+nkCQyQ0V50Qywi+Ue2INnI1I+6o+I6AEY0Qc8Rg+f/Abf+OXLQvnXWaK1Akkd+FI/bZ+vAEwOSbrYqBK2VmauKEa8L7Qi/k20a9pExf1/A/Vl+eaMQwnNPiKc+TXyLV/Z6bwqWcj3EBKnhpjaSb3JaCCYPbKbqNmOa92pAGcR5YUQVtNcUroddSboEGpW4N7L76wAiITxJmvhHOMYEDN3hUEEeKPepUkSb7eVAXm35lr3wwx0v56xIMRmIsZfrxP0NV6OiSnvANe384MoNpO+Zjlnkgvms+0ipLCb+kmS9ohplkt/nrD121Mhw53+QDKHjx5urh7GMoPdKCV8rYJiw9WJWf9sCVRElmTVRa+K5UDm2d6x1ebBIXdQuG4fPAZ0ghAdB8+8jYcPbkEwRy/7cEWOagqYZlP4HaIOtr3p2G2WlTfd06p3lQ+bPVKlLF5UZT8zpHx1E+lnab8dFiHx4x7DDgt3l0Vpy+MdvQn3qp0yMo51VrrAxmpjSXY1c7XvUVVNVqBlll5UVn4VISeF45PfhIlYHH0hG2G1dvyrQvlot+ADAP9nRQIsvUPxoJ2hw== X-Forefront-Antispam-Report: CIP:216.228.118.233;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc7edge2.nvidia.com;CAT:NONE;SFS:(13230040)(376014)(82310400026)(1800799024)(36860700016)(18002099003)(22082099003)(56012099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: Wo9/r1vx3M3cKrNIFt+3zwQq2stpAPppbFqOPvxRvgWnybVAbst5naG4Om6vAA42UNcGTDNlNb3Lis8sG6AYFuOfNr3h+kpOlnxW4R0s+XZI5GOWFud97JdQssqrkBgj35RJwGXHIvc9Sv08+FH9LX37Khq3DkInvYX9QwDnIwX5LM+3qsLuu06FCvh1p0xX29/Y9HJPdrYPC1WKdMrlmYPypSWgKV06yjpp7gDO5VNsqkl2t7pqtu3/RTlKDez6vMo0Po8JorDSsFxTaRgQU1atpLqNTNAl2moRy16fpyldL+6UCCfutq6qZacpJHzmoqNrCeHsvZ3ar5E0yAODQJ3k+QZD31kHDue8gB2vEIPUXjlYxikuLgFgaesDYXB3ndgTSjbnFUyJ8F/pnKod/JR1pJ3uJTfNO+niipaZWiqdoY3n3353FBW4SGl0SdCa X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Mar 2026 19:41:30.8470 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 20a8d3f5-3347-4f9e-53f8-08de8e9457a9 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.233];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BL02EPF00029928.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB8420 Content-Type: text/plain; charset="utf-8" From: Saeed Mahameed If for some internal reason switchdev mode fails, we rollback to legacy mode, before this patch, rollback will unregister the uplink netdev and leave it unregistered causing the below kernel bug. To fix this, we need to avoid netdev unregister by setting the proper rollback flag 'MLX5_PRIV_FLAGS_SWITCH_LEGACY' to indicate legacy mode. devlink (431) used greatest stack depth: 11048 bytes left mlx5_core 0000:00:03.0: E-Switch: Disable: mode(LEGACY), nvfs(0), \ necvfs(0), active vports(0) mlx5_core 0000:00:03.0: E-Switch: Supported tc chains and prios offload mlx5_core 0000:00:03.0: Loading uplink representor for vport 65535 mlx5_core 0000:00:03.0: mlx5_cmd_out_err:816:(pid 456): \ QUERY_HCA_CAP(0x100) op_mod(0x0) failed, \ status bad parameter(0x3), syndrome (0x3a3846), err(-22) mlx5_core 0000:00:03.0 enp0s3np0 (unregistered): Unloading uplink \ representor for vport 65535 ------------[ cut here ]------------ kernel BUG at net/core/dev.c:12070! Oops: invalid opcode: 0000 [#1] SMP NOPTI CPU: 2 UID: 0 PID: 456 Comm: devlink Not tainted 6.16.0-rc3+ \ #9 PREEMPT(voluntary) RIP: 0010:unregister_netdevice_many_notify+0x123/0xae0 ... Call Trace: [ 90.923094] unregister_netdevice_queue+0xad/0xf0 [ 90.923323] unregister_netdev+0x1c/0x40 [ 90.923522] mlx5e_vport_rep_unload+0x61/0xc6 [ 90.923736] esw_offloads_enable+0x8e6/0x920 [ 90.923947] mlx5_eswitch_enable_locked+0x349/0x430 [ 90.924182] ? is_mp_supported+0x57/0xb0 [ 90.924376] mlx5_devlink_eswitch_mode_set+0x167/0x350 [ 90.924628] devlink_nl_eswitch_set_doit+0x6f/0xf0 [ 90.924862] genl_family_rcv_msg_doit+0xe8/0x140 [ 90.925088] genl_rcv_msg+0x18b/0x290 [ 90.925269] ? __pfx_devlink_nl_pre_doit+0x10/0x10 [ 90.925506] ? __pfx_devlink_nl_eswitch_set_doit+0x10/0x10 [ 90.925766] ? __pfx_devlink_nl_post_doit+0x10/0x10 [ 90.926001] ? __pfx_genl_rcv_msg+0x10/0x10 [ 90.926206] netlink_rcv_skb+0x52/0x100 [ 90.926393] genl_rcv+0x28/0x40 [ 90.926557] netlink_unicast+0x27d/0x3d0 [ 90.926749] netlink_sendmsg+0x1f7/0x430 [ 90.926942] __sys_sendto+0x213/0x220 [ 90.927127] ? __sys_recvmsg+0x6a/0xd0 [ 90.927312] __x64_sys_sendto+0x24/0x30 [ 90.927504] do_syscall_64+0x50/0x1c0 [ 90.927687] entry_SYSCALL_64_after_hwframe+0x76/0x7e [ 90.927929] RIP: 0033:0x7f7d0363e047 Fixes: 2a4f56fbcc47 ("net/mlx5e: Keep netdev when leave switchdev for devli= nk set legacy only") Signed-off-by: Saeed Mahameed Reviewed-by: Jianbo Liu Signed-off-by: Tariq Toukan --- drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c b/d= rivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c index 7a9ee36b8dca..01f6aecc4fcc 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c @@ -3761,6 +3761,8 @@ int esw_offloads_enable(struct mlx5_eswitch *esw) return 0; =20 err_vports: + /* rollback to legacy, indicates don't unregister the uplink netdev */ + esw->dev->priv.flags |=3D MLX5_PRIV_FLAGS_SWITCH_LEGACY; mlx5_esw_offloads_rep_unload(esw, MLX5_VPORT_UPLINK); err_uplink: esw_offloads_steering_cleanup(esw); --=20 2.44.0