All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Atul Gopinathan <atulgopinathan@gmail.com>,
	Jiri Slaby <jirislaby@kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Sasha Levin <sashal@kernel.org>,
	linux-serial@vger.kernel.org
Subject: [PATCH AUTOSEL 4.14 02/21] serial: max310x: unregister uart driver in case of failure and abort
Date: Mon, 24 May 2021 10:50:21 -0400	[thread overview]
Message-ID: <20210524145040.2499322-2-sashal@kernel.org> (raw)
In-Reply-To: <20210524145040.2499322-1-sashal@kernel.org>

From: Atul Gopinathan <atulgopinathan@gmail.com>

[ Upstream commit 3890e3dea315f1a257d1b940a2a4e2fa16a7b095 ]

The macro "spi_register_driver" invokes the function
"__spi_register_driver()" which has a return type of int and can fail,
returning a negative value in such a case. This is currently ignored and
the init() function yields success even if the spi driver failed to
register.

Fix this by collecting the return value of "__spi_register_driver()" and
also unregister the uart driver in case of failure.

Cc: Jiri Slaby <jirislaby@kernel.org>
Signed-off-by: Atul Gopinathan <atulgopinathan@gmail.com>
Link: https://lore.kernel.org/r/20210503115736.2104747-12-gregkh@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/tty/serial/max310x.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/tty/serial/max310x.c b/drivers/tty/serial/max310x.c
index cec995ec11ea..454659544d35 100644
--- a/drivers/tty/serial/max310x.c
+++ b/drivers/tty/serial/max310x.c
@@ -1385,10 +1385,12 @@ static int __init max310x_uart_init(void)
 		return ret;
 
 #ifdef CONFIG_SPI_MASTER
-	spi_register_driver(&max310x_spi_driver);
+	ret = spi_register_driver(&max310x_spi_driver);
+	if (ret)
+		uart_unregister_driver(&max310x_uart);
 #endif
 
-	return 0;
+	return ret;
 }
 module_init(max310x_uart_init);
 
-- 
2.30.2


  reply	other threads:[~2021-05-24 15:10 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-24 14:50 [PATCH AUTOSEL 4.14 01/21] platform/x86: hp_accel: Avoid invoking _INI to speed up resume Sasha Levin
2021-05-24 14:50 ` Sasha Levin [this message]
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 03/21] net: fujitsu: fix potential null-ptr-deref Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 04/21] net: caif: remove BUG_ON(dev == NULL) in caif_xmit Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 05/21] char: hpet: add checks after calling ioremap Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 06/21] ALSA: sb8: Add a comment note regarding an unused pointer Sasha Levin
2021-05-24 14:50   ` Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 07/21] isdn: mISDNinfineon: check/cleanup ioremap failure correctly in setup_io Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 08/21] ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd() Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 09/21] dmaengine: qcom_hidma: comment platform_driver_register call Sasha Levin
2021-05-24 14:50   ` Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 10/21] libertas: register sysfs groups properly Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 11/21] media: dvb: Add check on sp8870_readreg return Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 12/21] media: gspca: mt9m111: Check write_bridge for timeout Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 13/21] media: gspca: properly check for errors in po1030_probe() Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 14/21] cdrom: gdrom: initialize global variable at init time Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 15/21] scsi: BusLogic: Fix 64-bit system enumeration error for Buslogic Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 16/21] openrisc: Define memory barrier mb Sasha Levin
2021-05-24 14:50   ` [OpenRISC] " Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 17/21] btrfs: do not BUG_ON in link_to_fixup_dir Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 18/21] platform/x86: hp-wireless: add AMD's hardware id to the supported list Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 19/21] platform/x86: intel_punit_ipc: Append MODULE_DEVICE_TABLE for ACPI Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 20/21] SMB3: incorrect file id in requests compounded with open Sasha Levin
2021-05-24 14:50 ` [PATCH AUTOSEL 4.14 21/21] drm/amdgpu: Fix a use-after-free Sasha Levin
2021-05-24 14:50   ` Sasha Levin
2021-05-24 14:50   ` Sasha Levin

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=20210524145040.2499322-2-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=atulgopinathan@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jirislaby@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-serial@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    /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.