Re: [PATCH] iio: imu: st_lsm6dsx: use dev_to_iio_dev() to get iio_dev struct

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 24 Feb 2022 19:29:51 +0800
haibo.chen@xxxxxxx wrote:

> From: Haibo Chen <haibo.chen@xxxxxxx>
> 
> After commit 8b7651f25962 ("iio: iio_device_alloc(): Remove
> unnecessary self drvdata"), current driver will meet kernel dump,
> kernel handle NULL pointer dereference.
Formal Fixes tag needed, but I can turn this into one whilst applying
and modify this description to talk about what no longer works rather
than the patch.
> 
> Use dev_to_iio_dev() to get iio_dev struct.
> 
> Signed-off-by: Haibo Chen <haibo.chen@xxxxxxx>
Looks correct to me, so I'll queue it up in the iio/fixes-togreg branch.

Applied to the fixes-togreg branch of iio.git.

Thanks,

Jonathan

> ---
>  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
> index 93f0c6bce502..b1d8d5a66f01 100644
> --- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
> +++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
> @@ -1633,7 +1633,7 @@ st_lsm6dsx_sysfs_sampling_frequency_avail(struct device *dev,
>  					  struct device_attribute *attr,
>  					  char *buf)
>  {
> -	struct st_lsm6dsx_sensor *sensor = iio_priv(dev_get_drvdata(dev));
> +	struct st_lsm6dsx_sensor *sensor = iio_priv(dev_to_iio_dev(dev));
>  	const struct st_lsm6dsx_odr_table_entry *odr_table;
>  	int i, len = 0;
>  
> @@ -1651,7 +1651,7 @@ static ssize_t st_lsm6dsx_sysfs_scale_avail(struct device *dev,
>  					    struct device_attribute *attr,
>  					    char *buf)
>  {
> -	struct st_lsm6dsx_sensor *sensor = iio_priv(dev_get_drvdata(dev));
> +	struct st_lsm6dsx_sensor *sensor = iio_priv(dev_to_iio_dev(dev));
>  	const struct st_lsm6dsx_fs_table_entry *fs_table;
>  	struct st_lsm6dsx_hw *hw = sensor->hw;
>  	int i, len = 0;




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux