[PATCH v4 5/9] iio: adc: meson_saradc: annotate the lock helpers
Rupesh Majhi
zoone.rupert at gmail.com
Tue Oct 27 05:49:50 PDT 2026
meson_sar_adc_lock() returns 0 with priv->lock held, and
meson_sar_adc_unlock() releases it. Annotate both so context analysis
follows the lock into the callers. Only indio_dev is in scope in the
annotation, so the lock is reached through iio_priv().
Signed-off-by: Rupesh Majhi <zoone.rupert at gmail.com>
---
Cc: Marco Elver <elver at google.com>
Cc: Bart Van Assche <bvanassche at acm.org>
drivers/iio/adc/meson_saradc.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/iio/adc/meson_saradc.c b/drivers/iio/adc/meson_saradc.c
index 2b003fd5afeb..3c1bc2274129 100644
--- a/drivers/iio/adc/meson_saradc.c
+++ b/drivers/iio/adc/meson_saradc.c
@@ -578,6 +578,7 @@ static void meson_sar_adc_stop_sample_engine(struct iio_dev *indio_dev)
}
static int meson_sar_adc_lock(struct iio_dev *indio_dev)
+ __cond_acquires(0, &((struct meson_sar_adc_priv *)iio_priv(indio_dev))->lock)
{
struct meson_sar_adc_priv *priv = iio_priv(indio_dev);
int val, ret;
@@ -608,6 +609,7 @@ static int meson_sar_adc_lock(struct iio_dev *indio_dev)
}
static void meson_sar_adc_unlock(struct iio_dev *indio_dev)
+ __releases(&((struct meson_sar_adc_priv *)iio_priv(indio_dev))->lock)
{
struct meson_sar_adc_priv *priv = iio_priv(indio_dev);
--
2.43.0
More information about the linux-arm-kernel
mailing list