From: Dan Carpenter Date: Fri, 28 Feb 2025 09:35:40 +0000 (+0300) Subject: iio: adc: ad4030: fix error pointer dereference in probe() X-Git-Tag: v6.15-rc1~78^2~8^2~32 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=15a007e7ae5b0680bc236b478c5c680512ec45bd;p=thirdparty%2Fkernel%2Flinux.git iio: adc: ad4030: fix error pointer dereference in probe() The intention here was obviously to return an error if devm_regmap_init() fails, but the return statement was accidentally left out. This leads to an error pointer dereference when we call: ret = ad4030_detect_chip_info(st); Add the return statement. Fixes: ec25cf6f1ee3 ("iio: adc: ad4030: add support for ad4632-16 and ad4632-24") Signed-off-by: Dan Carpenter Reviewed-by: Nuno Sá Link: https://patch.msgid.link/cc67cee7-9c65-46d2-aae3-f860fc3cc461@stanley.mountain Signed-off-by: Jonathan Cameron --- diff --git a/drivers/iio/adc/ad4030.c b/drivers/iio/adc/ad4030.c index 209cfc2e17850..9a020680885d9 100644 --- a/drivers/iio/adc/ad4030.c +++ b/drivers/iio/adc/ad4030.c @@ -1011,8 +1011,8 @@ static int ad4030_probe(struct spi_device *spi) st->regmap = devm_regmap_init(dev, &ad4030_regmap_bus, st, &ad4030_regmap_config); if (IS_ERR(st->regmap)) - dev_err_probe(dev, PTR_ERR(st->regmap), - "Failed to initialize regmap\n"); + return dev_err_probe(dev, PTR_ERR(st->regmap), + "Failed to initialize regmap\n"); st->chip = spi_get_device_match_data(spi); if (!st->chip)