All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] iio: adc: meson-saradc: unlock on error in meson_sar_adc_lock()
@ 2018-03-08  9:31 ` Dan Carpenter
  0 siblings, 0 replies; 7+ messages in thread
From: Dan Carpenter @ 2018-03-08  9:31 UTC (permalink / raw)
  To: Jonathan Cameron, Martin Blumenstingl
  Cc: Hartmut Knaack, Lars-Peter Clausen, Peter Meerwald-Stadler,
	Carlo Caione, Kevin Hilman, Rob Herring, Paolo Cretaro,
	Heiner Kallweit, Gustavo A. R. Silva, Xingyu Chen, linux-iio,
	kernel-janitors

The meson_sar_adc_lock() function is not supposed to hold the
"indio_dev->mlock" on the error path.

Fixes: 3adbf3427330 ("iio: adc: add a driver for the SAR ADC found in Amlogic Meson SoCs")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

diff --git a/drivers/iio/adc/meson_saradc.c b/drivers/iio/adc/meson_saradc.c
index 29fa7736d80c..ede955d9b2a4 100644
--- a/drivers/iio/adc/meson_saradc.c
+++ b/drivers/iio/adc/meson_saradc.c
@@ -462,8 +462,10 @@ static int meson_sar_adc_lock(struct iio_dev *indio_dev)
 			regmap_read(priv->regmap, MESON_SAR_ADC_DELAY, &val);
 		} while (val & MESON_SAR_ADC_DELAY_BL30_BUSY && timeout--);
 
-		if (timeout < 0)
+		if (timeout < 0) {
+			mutex_unlock(&indio_dev->mlock);
 			return -ETIMEDOUT;
+		}
 	}
 
 	return 0;

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-03-13  8:16 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-08  9:31 [PATCH] iio: adc: meson-saradc: unlock on error in meson_sar_adc_lock() Dan Carpenter
2018-03-08  9:31 ` Dan Carpenter
2018-03-10 15:15 ` Jonathan Cameron
2018-03-12 20:43 ` Martin Blumenstingl
2018-03-12 20:43   ` Martin Blumenstingl
2018-03-13  8:16   ` Dan Carpenter
2018-03-13  8:16     ` Dan Carpenter

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.