]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
iio: adc: palmas_gpadc: fix NULL dereference on rmmod
authorPatrik Dahlström <risca@dalakolonin.se>
Mon, 13 Mar 2023 20:50:29 +0000 (21:50 +0100)
committerStefan Bader <stefan.bader@canonical.com>
Fri, 7 Jul 2023 10:16:40 +0000 (12:16 +0200)
BugLink: https://bugs.launchpad.net/bugs/2025067
[ Upstream commit 49f76c499d38bf67803438eee88c8300d0f6ce09 ]

Calling dev_to_iio_dev() on a platform device pointer is undefined and
will make adc NULL.

Signed-off-by: Patrik Dahlström <risca@dalakolonin.se>
Link: https://lore.kernel.org/r/20230313205029.1881745-1-risca@dalakolonin.se
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/iio/adc/palmas_gpadc.c

index fd000345ec5cff0b1201092453547e0356446876..849a697a467e58689b7ba1ac72a8c650400852af 100644 (file)
@@ -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)