[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240519132940.3714e57b@jic23-huawei>
Date: Sun, 19 May 2024 13:29:40 +0100
From: Jonathan Cameron <jic23@...nel.org>
To: Harshit Mogalapalli <harshit.m.mogalapalli@...cle.com>
Cc: Crt Mori <cmo@...exis.com>, Lars-Peter Clausen <lars@...afoo.de>,
linux-iio@...r.kernel.org, linux-kernel@...r.kernel.org,
dan.carpenter@...aro.org, kernel-janitors@...r.kernel.org,
error27@...il.com
Subject: Re: [PATCH v2] iio: temperature: mlx90635: Fix ERR_PTR dereference
in mlx90635_probe()
On Mon, 13 May 2024 13:34:27 -0700
Harshit Mogalapalli <harshit.m.mogalapalli@...cle.com> wrote:
> When devm_regmap_init_i2c() fails, regmap_ee could be error pointer,
> instead of checking for IS_ERR(regmap_ee), regmap is checked which looks
> like a copy paste error.
>
> Fixes: a1d1ba5e1c28 ("iio: temperature: mlx90635 MLX90635 IR Temperature sensor")
> Signed-off-by: Harshit Mogalapalli <harshit.m.mogalapalli@...cle.com>
Please make sure to pick up tags given on earlier versions. You dropped
Crt's Reviewed-by without giving a reasons. I've put it back.
Applied to the fixes-togreg branch of iio.git and marked for stable.
I'll be rebasing that on rc1 once available. Until then it won't be visible.
Thanks,
Jonathan
> ---
> This is found using smatch, only compile tested.
> v1->v2: Address Crt's comments.
> ---
> drivers/iio/temperature/mlx90635.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/iio/temperature/mlx90635.c b/drivers/iio/temperature/mlx90635.c
> index 1f5c962c1818..f7f88498ba0e 100644
> --- a/drivers/iio/temperature/mlx90635.c
> +++ b/drivers/iio/temperature/mlx90635.c
> @@ -947,9 +947,9 @@ static int mlx90635_probe(struct i2c_client *client)
> "failed to allocate regmap\n");
>
> regmap_ee = devm_regmap_init_i2c(client, &mlx90635_regmap_ee);
> - if (IS_ERR(regmap))
> - return dev_err_probe(&client->dev, PTR_ERR(regmap),
> - "failed to allocate regmap\n");
> + if (IS_ERR(regmap_ee))
> + return dev_err_probe(&client->dev, PTR_ERR(regmap_ee),
> + "failed to allocate EEPROM regmap\n");
>
> mlx90635 = iio_priv(indio_dev);
> i2c_set_clientdata(client, indio_dev);
Powered by blists - more mailing lists