Received: by 2002:a05:6a10:1d13:0:0:0:0 with SMTP id pp19csp333907pxb; Mon, 16 Aug 2021 06:33:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz6RN7T7hLJ2jkyz64wEvjOnt7eQcCnMsu8c8i7e345qyULk236cR7p/div62n6qM2h6PMz X-Received: by 2002:a17:907:7718:: with SMTP id kw24mr16604394ejc.316.1629120782237; Mon, 16 Aug 2021 06:33:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1629120782; cv=none; d=google.com; s=arc-20160816; b=BzoKViy9RkrGH6IRuTfwaq2ijzj21wB1NXBR9BWl592bLPC7YR1VQ7lxoge36x9Awu jzL2AxbF4auyDzOA/eTTIJjFRXYHuchXQTnrnQi5e2GU14ahz8PRlxu2P5j7kotGOAa9 e+WaZHrwUyT0fRp5o7VSVgw9ec51GaaHkn+yNMyzDkr7N/fx1nhZxKOgisEDommGMRfK 4itEspWM4RYQ4WLs3enfqdpcbIuSMewQU/qmTfOU6fpAqLpKk1o2ziE0FuMdRDDP0F/g QVH67gQNxbZcXUUdQSNEE1gSKD92e1n0NGSY3MMmSS79emBghj7r3o7qvxemd6H37nky pvVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=mRsjuplJzZlbwlWn63ZI/6JVJSs4h8vuuFrnckv7qpQ=; b=Y1eSrV1Y2Ed+BkRqHP6idPGVmh38/+pRg0xsbPukrdO3LZg8KIKUgu4Sd/r+xy6M0C AwMMaPWZAdtSwHLQFWIziuNtbJiOdPfGAd5MPfqKyH9Z4KUNnLFM3gqnNmEY7RuR3nPK edWMr+Bacf7Dz2PWc/HT+A0vaRPkmEkXakhmEOF3WzpMif2bUVD4n2YulWe6FMBvRiOV VN+9IZ2swLtt8yVAJJeR8S85qEf4euHal4p3iytI8sjj96S5M0awpY2xQxH965KW99PD GWWXJ91kS9kz9LC1haK8HBiVrXJ0+A4IgNmr1Qgjo/zJMRIpU+NSneEwPTNLXU1Skn3+ ZNOA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=OLJZl575; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id a15si7859579ejr.86.2021.08.16.06.32.38; Mon, 16 Aug 2021 06:33:02 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=OLJZl575; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S241584AbhHPN36 (ORCPT + 99 others); Mon, 16 Aug 2021 09:29:58 -0400 Received: from mail.kernel.org ([198.145.29.99]:37188 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239667AbhHPNQS (ORCPT ); Mon, 16 Aug 2021 09:16:18 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id F0F76632E6; Mon, 16 Aug 2021 13:12:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1629119578; bh=rQn+nlfPnhfgJ3O9LUqPWSl0kSekpU8G/CqbUvYPlh8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OLJZl575AfjltiCiCEgm1RJeuGsWQxlPo/j0iH0Z/dtRL02aK8Z13syE35zkmE+ru cVo4IykMh0gcLXsTSvj5O3n9w8EPTwyjL/10rWxja4P6I5+y6UXJKVrTJhrcUgdX5Y 9GockbdNJ0U/ybzoceLOk6ZPcZjOwgdvhSFJqC2U= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Leon Romanovsky , Parav Pandit , Saeed Mahameed , Sasha Levin Subject: [PATCH 5.13 080/151] net/mlx5: Dont skip subfunction cleanup in case of error in module init Date: Mon, 16 Aug 2021 15:01:50 +0200 Message-Id: <20210816125446.711687447@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210816125444.082226187@linuxfoundation.org> References: <20210816125444.082226187@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Leon Romanovsky [ Upstream commit c633e799641cf13960bd83189b4d5b1b2adb0d4e ] Clean SF resources if mlx5 eth failed to initialize. Fixes: 1958fc2f0712 ("net/mlx5: SF, Add auxiliary device driver") Signed-off-by: Leon Romanovsky Reviewed-by: Parav Pandit Signed-off-by: Saeed Mahameed Signed-off-by: Sasha Levin --- 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 0d0f63a27aba..8c6d7f70e783 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/main.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/main.c @@ -1781,16 +1781,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: @@ -1800,9 +1798,7 @@ err_debug: 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 a22b706eebd3..1824eb0b0e9a 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h +++ b/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.h @@ -223,8 +223,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.30.2