From: Saeed Mahameed <saeed@kernel.org>
To: "David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>
Cc: netdev@vger.kernel.org, Leon Romanovsky <leonro@nvidia.com>,
Tariq Toukan <tariqt@nvidia.com>, Parav Pandit <parav@nvidia.com>,
Saeed Mahameed <saeedm@nvidia.com>
Subject: [net 01/12] net/mlx5: Don't skip subfunction cleanup in case of error in module init
Date: Mon, 9 Aug 2021 20:59:12 -0700 [thread overview]
Message-ID: <20210810035923.345745-2-saeed@kernel.org> (raw)
In-Reply-To: <20210810035923.345745-1-saeed@kernel.org>
From: Leon Romanovsky <leonro@nvidia.com>
Clean SF resources if mlx5 eth failed to initialize.
Fixes: 1958fc2f0712 ("net/mlx5: SF, Add auxiliary device driver")
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Reviewed-by: Parav Pandit <parav@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
---
drivers/net/ethernet/mellanox/mlx5/core/main.c | 12 ++++--------
drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h | 5 +++++
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/main.c b/drivers/net/ethernet/mellanox/mlx5/core/main.c
index eb1b316560a8..c84ad87c99bb 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/main.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/main.c
@@ -1784,16 +1784,14 @@ static int __init init(void)
if (err)
goto err_sf;
-#ifdef CONFIG_MLX5_CORE_EN
err = mlx5e_init();
- if (err) {
- pci_unregister_driver(&mlx5_core_driver);
- goto err_debug;
- }
-#endif
+ if (err)
+ goto err_en;
return 0;
+err_en:
+ mlx5_sf_driver_unregister();
err_sf:
pci_unregister_driver(&mlx5_core_driver);
err_debug:
@@ -1803,9 +1801,7 @@ static int __init init(void)
static void __exit cleanup(void)
{
-#ifdef CONFIG_MLX5_CORE_EN
mlx5e_cleanup();
-#endif
mlx5_sf_driver_unregister();
pci_unregister_driver(&mlx5_core_driver);
mlx5_unregister_debugfs();
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h b/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h
index 343807ac2036..da365b8f0141 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h
+++ b/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h
@@ -206,8 +206,13 @@ int mlx5_firmware_flash(struct mlx5_core_dev *dev, const struct firmware *fw,
int mlx5_fw_version_query(struct mlx5_core_dev *dev,
u32 *running_ver, u32 *stored_ver);
+#ifdef CONFIG_MLX5_CORE_EN
int mlx5e_init(void);
void mlx5e_cleanup(void);
+#else
+static inline int mlx5e_init(void){ return 0; }
+static inline void mlx5e_cleanup(void){}
+#endif
static inline bool mlx5_sriov_is_enabled(struct mlx5_core_dev *dev)
{
--
2.31.1
next prev parent reply other threads:[~2021-08-10 3:59 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-10 3:59 [pull request][net 00/12] mlx5 fixes 2021-08-09 Saeed Mahameed
2021-08-10 3:59 ` Saeed Mahameed [this message]
2021-08-10 8:53 ` [net 01/12] net/mlx5: Don't skip subfunction cleanup in case of error in module init patchwork-bot+netdevbpf
2021-08-10 3:59 ` [net 02/12] net/mlx5: DR, Add fail on error check on decap Saeed Mahameed
2021-08-10 3:59 ` [net 03/12] net/mlx5e: Avoid creating tunnel headers for local route Saeed Mahameed
2021-08-10 3:59 ` [net 04/12] net/mlx5: Bridge, fix ageing time Saeed Mahameed
2021-08-10 3:59 ` [net 05/12] net/mlx5e: Destroy page pool after XDP SQ to fix use-after-free Saeed Mahameed
2021-08-10 3:59 ` [net 06/12] net/mlx5: Block switchdev mode while devlink traps are active Saeed Mahameed
2021-08-10 3:59 ` [net 07/12] net/mlx5: Fix order of functions in mlx5_irq_detach_nb() Saeed Mahameed
2021-08-10 3:59 ` [net 08/12] net/mlx5: Set all field of mlx5_irq before inserting it to the xarray Saeed Mahameed
2021-08-10 3:59 ` [net 09/12] net/mlx5: Destroy pool->mutex Saeed Mahameed
2021-08-10 3:59 ` [net 10/12] net/mlx5e: TC, Fix error handling memory leak Saeed Mahameed
2021-08-10 3:59 ` [net 11/12] net/mlx5: Synchronize correct IRQ when destroying CQ Saeed Mahameed
2021-08-10 3:59 ` [net 12/12] net/mlx5: Fix return value from tracer initialization Saeed Mahameed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210810035923.345745-2-saeed@kernel.org \
--to=saeed@kernel.org \
--cc=davem@davemloft.net \
--cc=kuba@kernel.org \
--cc=leonro@nvidia.com \
--cc=netdev@vger.kernel.org \
--cc=parav@nvidia.com \
--cc=saeedm@nvidia.com \
--cc=tariqt@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.