* [PATCH] iio:common:ssp_sensors: Fix an error handling path ssp_probe()
@ 2025-10-10 18:58 Christophe JAILLET
2025-10-10 18:56 ` Nuno Sá
0 siblings, 1 reply; 3+ messages in thread
From: Christophe JAILLET @ 2025-10-10 18:58 UTC (permalink / raw)
To: Jonathan Cameron, David Lechner, Nuno Sá, Andy Shevchenko,
Kyungmin Park, Karol Wrona
Cc: linux-kernel, kernel-janitors, Christophe JAILLET, linux-iio
If an error occurs after a successful mfd_add_devices() call, it should be
undone by a corresponding mfd_remove_devices() call, as already done in the
remove function.
Fixes: 50dd64d57eee ("iio: common: ssp_sensors: Add sensorhub driver")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
drivers/iio/common/ssp_sensors/ssp_dev.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/common/ssp_sensors/ssp_dev.c b/drivers/iio/common/ssp_sensors/ssp_dev.c
index 1e167dc673ca..da09c9f3ceb6 100644
--- a/drivers/iio/common/ssp_sensors/ssp_dev.c
+++ b/drivers/iio/common/ssp_sensors/ssp_dev.c
@@ -503,7 +503,7 @@ static int ssp_probe(struct spi_device *spi)
ret = spi_setup(spi);
if (ret < 0) {
dev_err(&spi->dev, "Failed to setup spi\n");
- return ret;
+ goto err_setup_spi;
}
data->fw_dl_state = SSP_FW_DL_STATE_NONE;
@@ -568,6 +568,8 @@ static int ssp_probe(struct spi_device *spi)
err_setup_irq:
mutex_destroy(&data->pending_lock);
mutex_destroy(&data->comm_lock);
+err_setup_spi:
+ mfd_remove_devices(&spi->dev);
dev_err(&spi->dev, "Probe failed!\n");
--
2.51.0
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH] iio:common:ssp_sensors: Fix an error handling path ssp_probe()
2025-10-10 18:58 [PATCH] iio:common:ssp_sensors: Fix an error handling path ssp_probe() Christophe JAILLET
@ 2025-10-10 18:56 ` Nuno Sá
2025-10-12 19:02 ` Jonathan Cameron
0 siblings, 1 reply; 3+ messages in thread
From: Nuno Sá @ 2025-10-10 18:56 UTC (permalink / raw)
To: Christophe JAILLET, Jonathan Cameron, David Lechner, Nuno Sá,
Andy Shevchenko, Kyungmin Park, Karol Wrona
Cc: linux-kernel, kernel-janitors, linux-iio
On Fri, 2025-10-10 at 20:58 +0200, Christophe JAILLET wrote:
> If an error occurs after a successful mfd_add_devices() call, it should be
> undone by a corresponding mfd_remove_devices() call, as already done in the
> remove function.
>
> Fixes: 50dd64d57eee ("iio: common: ssp_sensors: Add sensorhub driver")
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> ---
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
> drivers/iio/common/ssp_sensors/ssp_dev.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/iio/common/ssp_sensors/ssp_dev.c
> b/drivers/iio/common/ssp_sensors/ssp_dev.c
> index 1e167dc673ca..da09c9f3ceb6 100644
> --- a/drivers/iio/common/ssp_sensors/ssp_dev.c
> +++ b/drivers/iio/common/ssp_sensors/ssp_dev.c
> @@ -503,7 +503,7 @@ static int ssp_probe(struct spi_device *spi)
> ret = spi_setup(spi);
> if (ret < 0) {
> dev_err(&spi->dev, "Failed to setup spi\n");
> - return ret;
> + goto err_setup_spi;
> }
>
> data->fw_dl_state = SSP_FW_DL_STATE_NONE;
> @@ -568,6 +568,8 @@ static int ssp_probe(struct spi_device *spi)
> err_setup_irq:
> mutex_destroy(&data->pending_lock);
> mutex_destroy(&data->comm_lock);
> +err_setup_spi:
> + mfd_remove_devices(&spi->dev);
>
> dev_err(&spi->dev, "Probe failed!\n");
>
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] iio:common:ssp_sensors: Fix an error handling path ssp_probe()
2025-10-10 18:56 ` Nuno Sá
@ 2025-10-12 19:02 ` Jonathan Cameron
0 siblings, 0 replies; 3+ messages in thread
From: Jonathan Cameron @ 2025-10-12 19:02 UTC (permalink / raw)
To: Nuno Sá
Cc: Christophe JAILLET, David Lechner, Nuno Sá, Andy Shevchenko,
Kyungmin Park, Karol Wrona, linux-kernel, kernel-janitors,
linux-iio
On Fri, 10 Oct 2025 19:56:41 +0100
Nuno Sá <noname.nuno@gmail.com> wrote:
> On Fri, 2025-10-10 at 20:58 +0200, Christophe JAILLET wrote:
> > If an error occurs after a successful mfd_add_devices() call, it should be
> > undone by a corresponding mfd_remove_devices() call, as already done in the
> > remove function.
> >
> > Fixes: 50dd64d57eee ("iio: common: ssp_sensors: Add sensorhub driver")
> > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> > ---
>
> Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Applied to my temporary fixes branch (I'll rebase on rc1) and marked
for stable.
Thanks,
Jonathan
>
> > drivers/iio/common/ssp_sensors/ssp_dev.c | 4 +++-
> > 1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/iio/common/ssp_sensors/ssp_dev.c
> > b/drivers/iio/common/ssp_sensors/ssp_dev.c
> > index 1e167dc673ca..da09c9f3ceb6 100644
> > --- a/drivers/iio/common/ssp_sensors/ssp_dev.c
> > +++ b/drivers/iio/common/ssp_sensors/ssp_dev.c
> > @@ -503,7 +503,7 @@ static int ssp_probe(struct spi_device *spi)
> > ret = spi_setup(spi);
> > if (ret < 0) {
> > dev_err(&spi->dev, "Failed to setup spi\n");
> > - return ret;
> > + goto err_setup_spi;
> > }
> >
> > data->fw_dl_state = SSP_FW_DL_STATE_NONE;
> > @@ -568,6 +568,8 @@ static int ssp_probe(struct spi_device *spi)
> > err_setup_irq:
> > mutex_destroy(&data->pending_lock);
> > mutex_destroy(&data->comm_lock);
> > +err_setup_spi:
> > + mfd_remove_devices(&spi->dev);
> >
> > dev_err(&spi->dev, "Probe failed!\n");
> >
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-10-12 19:02 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-10 18:58 [PATCH] iio:common:ssp_sensors: Fix an error handling path ssp_probe() Christophe JAILLET
2025-10-10 18:56 ` Nuno Sá
2025-10-12 19:02 ` Jonathan Cameron
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox