summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGriffin Kroah-Hartman <griffin@kroah.com>2026-07-07 16:22:17 +0200
committerDavid Heidelberg <david@ixit.cz>2026-07-26 21:26:05 +0200
commit94de4f6c5ffdbaf073155aae86443b2f8b03ef93 (patch)
tree73d5fed5b1022b8f1be447d3ca41fc16d999a0cd
parentf71129992e12b5d0f5119f980ff0290487488036 (diff)
downloadlinux-next-94de4f6c5ffdbaf073155aae86443b2f8b03ef93.tar.gz
linux-next-94de4f6c5ffdbaf073155aae86443b2f8b03ef93.zip
nfc: mrvl: spi: Unregister dev on allocation fail
Call nfcmrvl_nci_unregister_dev() if nci_spi_allocate_spi() fails, unwrapping the previous call to nfcmrvl_nci_register_dev() during the nfcmrvl_spi_probe() function. Assisted-by: gkh-clanker-2000 Cc: David Heidelberg <david@ixit.cz> Signed-off-by: Griffin Kroah-Hartman <griffin@kroah.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://patch.msgid.link/2026070716-crucial-slouchy-b8a9@gregkh Signed-off-by: David Heidelberg <david@ixit.cz>
-rw-r--r--drivers/nfc/nfcmrvl/spi.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/nfc/nfcmrvl/spi.c b/drivers/nfc/nfcmrvl/spi.c
index 9c8cde1250fb..dad07c8e13b8 100644
--- a/drivers/nfc/nfcmrvl/spi.c
+++ b/drivers/nfc/nfcmrvl/spi.c
@@ -168,6 +168,10 @@ static int nfcmrvl_spi_probe(struct spi_device *spi)
drv_data->nci_spi = nci_spi_allocate_spi(drv_data->spi, 0, 10,
drv_data->priv->ndev);
+ if (!drv_data->nci_spi) {
+ nfcmrvl_nci_unregister_dev(drv_data->priv);
+ return -ENOMEM;
+ }
/* Init completion for slave handshake */
init_completion(&drv_data->handshake_completion);