lkml.org 
[lkml]   [2019]   [May]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 4.19 070/276] media: stm32-dcmi: return appropriate error codes during probe
Hi!

> [ Upstream commit b5b5a27bee5884860798ffd0f08e611a3942064b ]
>
> During probe, return the provided errors value instead of -ENODEV.
> This allows the driver to be deferred probed if needed.

This is not correct AFAICT.


> --- a/drivers/media/platform/stm32/stm32-dcmi.c
> +++ b/drivers/media/platform/stm32/stm32-dcmi.c
> @@ -1673,8 +1673,9 @@ static int dcmi_probe(struct platform_device *pdev)
>
> irq = platform_get_irq(pdev, 0);
> if (irq <= 0) {
> - dev_err(&pdev->dev, "Could not get irq\n");
> - return -ENODEV;
> + if (irq != -EPROBE_DEFER)
> + dev_err(&pdev->dev, "Could not get irq\n");
> + return irq;
> }
>
> dcmi->res = platform_get_resource(pdev, IORESOURCE_MEM, 0);

irq == 0 is clearly means error here, but will be interpretted as
success when returned to the caller.

As device is not initialized at that point, I'd expect some kind of
crash later.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2019-05-31 10:19    [W:0.813 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site