From: Patrik Dahlström Date: Mon, 13 Mar 2023 20:50:29 +0000 (+0100) Subject: iio: adc: palmas_gpadc: fix NULL dereference on rmmod X-Git-Tag: v6.3-rc6~5^2^2~1 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=49f76c499d38bf67803438eee88c8300d0f6ce09;p=linux-block.git iio: adc: palmas_gpadc: fix NULL dereference on rmmod Calling dev_to_iio_dev() on a platform device pointer is undefined and will make adc NULL. Signed-off-by: Patrik Dahlström Link: https://lore.kernel.org/r/20230313205029.1881745-1-risca@dalakolonin.se Signed-off-by: Jonathan Cameron --- diff --git a/drivers/iio/adc/palmas_gpadc.c b/drivers/iio/adc/palmas_gpadc.c index fd000345ec5c..849a697a467e 100644 --- a/drivers/iio/adc/palmas_gpadc.c +++ b/drivers/iio/adc/palmas_gpadc.c @@ -639,7 +639,7 @@ out: static int palmas_gpadc_remove(struct platform_device *pdev) { - struct iio_dev *indio_dev = dev_to_iio_dev(&pdev->dev); + struct iio_dev *indio_dev = dev_get_drvdata(&pdev->dev); struct palmas_gpadc *adc = iio_priv(indio_dev); if (adc->wakeup1_enable || adc->wakeup2_enable)