Re: [PATCH] platform/x86: intel_mid_powerbtn: fix error return code in mid_pb_probe()
From: Andy Shevchenko
Date: Sun Aug 13 2017 - 08:30:34 EST
On Wed, Aug 9, 2017 at 7:00 PM, Gustavo A. R. Silva
<gustavo@xxxxxxxxxxxxxx> wrote:
> platform_get_irq() returns an error code, but the intel_mid_powerbtn
> driver ignores it and always returns -EINVAL. This is not correct and,
> prevents -EPROBE_DEFER from being propagated properly.
>
> Print error message and propagate the return value of platform_get_irq
> on failure.
>
> This issue was detected with the help of Coccinelle.
Pushed to testing, thanks!
>
> Signed-off-by: Gustavo A. R. Silva <gustavo@xxxxxxxxxxxxxx>
> ---
> drivers/platform/x86/intel_mid_powerbtn.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/platform/x86/intel_mid_powerbtn.c b/drivers/platform/x86/intel_mid_powerbtn.c
> index 871cfa6..854a16d 100644
> --- a/drivers/platform/x86/intel_mid_powerbtn.c
> +++ b/drivers/platform/x86/intel_mid_powerbtn.c
> @@ -142,8 +142,10 @@ static int mid_pb_probe(struct platform_device *pdev)
> if (!id)
> return -ENODEV;
>
> - if (irq < 0)
> - return -EINVAL;
> + if (irq < 0) {
> + dev_err(&pdev->dev, "Failed to get IRQ: %d\n", irq);
> + return irq;
> + }
>
> input = devm_input_allocate_device(&pdev->dev);
> if (!input)
> --
> 2.5.0
>
--
With Best Regards,
Andy Shevchenko