[PATCH] iio: admv1013: initialize callback mutex before registering notifier

From: Runyu Xiao

Date: Tue Aug 18 2026 - 10:31:32 EST


admv1013_probe() registers a clock notifier whose callback takes
st->lock on POST_RATE_CHANGE. Initialize the mutex before
devm_clk_notifier_register() so the callback cannot observe an
uninitialized lock during probe.

Fixes: da35a7b526d9 ("iio: frequency: admv1013: add support for ADMV1013")
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Runyu Xiao <runyu.xiao@xxxxxxxxxx>
---
drivers/iio/frequency/admv1013.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/iio/frequency/admv1013.c b/drivers/iio/frequency/admv1013.c
index d8e8d541990f..932f094f2b04 100644
--- a/drivers/iio/frequency/admv1013.c
+++ b/drivers/iio/frequency/admv1013.c
@@ -594,12 +594,12 @@ static int admv1013_probe(struct spi_device *spi)
"failed to get the LO input clock\n");

st->nb.notifier_call = admv1013_freq_change;
+ mutex_init(&st->lock);
+
ret = devm_clk_notifier_register(&spi->dev, st->clkin, &st->nb);
if (ret)
return ret;

- mutex_init(&st->lock);
-
ret = admv1013_init(st, vcm_uv);
if (ret) {
dev_err(&spi->dev, "admv1013 init failed\n");
--
2.34.1